首页
社区
课程
招聘
[旧帖] 《加密与解密》第330页 _lopen("\\\\.\\NTICE",...)不知其然??? 0.00雪花
发表于: 2004-5-31 22:30 12864

[旧帖] 《加密与解密》第330页 _lopen("\\\\.\\NTICE",...)不知其然??? 0.00雪花

2004-5-31 22:30
12864
《加密与解密》第330页有 _lopen("\\\\.\\NTICE",...) 这么一句代码。

这里的“\\.\NTICE”是驱动模块吗?
“\\.”在这里是什么意思?
前辈能不能详细说说?谢谢!

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 6
支持
分享
最新回复 (7)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
HANDLE CreateFile(

    LPCTSTR lpFileName,        // pointer to name of the file
    DWORD dwDesiredAccess,        // access (read-write) mode
    DWORD dwShareMode,        // share mode
    LPSECURITY_ATTRIBUTES lpSecurityAttributes,        // pointer to security attributes
    DWORD dwCreationDistribution,        // how to create
    DWORD dwFlagsAndAttributes,        // file attributes
    HANDLE hTemplateFile         // handle to file with attributes to copy  
   );       

Parameters

lpFileName

Points to a null-terminated string that specifies the name of the object (file, pipe, mailslot, communications resource, disk device, console, or directory) to create or open.

If *lpFileName is a path, there is a default string size limit of MAX_PATH characters. This limit is related to how the CreateFile function parses paths.
Windows NT: You can use paths longer than MAX_PATH characters by calling the wide (W) version of CreateFile and prepending "\\?\" to the path. The "\\?\" tells the function to turn off path parsing. This lets you use paths that are nearly 32,000 Unicode characters long. You must use fully-qualified paths with this technique. This also works with UNC names. The "\\?\" is ignored as part of the path. For example, "\\?\C:\myworld\private" is seen as "C:\myworld\private", and "\\?\UNC\tom_1\hotstuff\coolapps" is seen as "\\tom_1\hotstuff\coolapps".
2004-6-1 07:09
0
雪    币: 279
活跃值: (266)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
没人知道?不要贴msdn上createfile和lopen函数的说明好吗?我问的是"\\.\ntice"的含义
2004-6-2 17:17
0
雪    币: 231
活跃值: (465)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
最初由 ANTI 发布
没人知道?不要贴msdn上createfile和lopen函数的说明好吗?我问的是"\\.\ntice"的含义


靠,二楼贴出来的里面不是已经解释的很清楚了么。

MSDN就是宝呀,不看MSDN看什么呀。。。。。。。
2004-6-2 19:36
0
雪    币: 231
活跃值: (115)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
\\.\表示本地计算机。
\\servername\表示远程计算机
2004-6-3 15:10
0
雪    币: 279
活跃值: (266)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
你们能不能看看《加密与解密》第330页说明的问题再说话好吗?
里面介绍检测soft-ice的方法如下:
_lopen("\\\\.\\NTICE",...) 。

_lopen,createfile是有好多用途的,不仅对于文件和端口(还有许多I/O),我承认msdn是开发宝典,但要全面涵盖_lopen功能――_lopen函数的解释文档还远不能做到。

我对“\\.\NTICE”的表示有些疑惑,是驱动模块的约定名称吗?
2004-6-4 22:52
0
雪    币: 3246
活跃值: (374)
能力值: (RANK:20 )
在线值:
发帖
回帖
粉丝
7
NTICE是softice的驱动程序向Win32应用程序所显露出来的设备的符号名称。每个驱动会创建/管理一个或者多个虚拟的或者物理的设备,每个设备有个设备名,但这个设备名只能在驱动之间引用。需要显露给Win32应用程序的设备除了设备名之外,还要有一个符号名,便于Win32应用程序通过CreateFile/_lopen来引用。

在驱动里面是用IoCreateSymbolicLink( )来显露设备符号名的。
2004-6-5 00:08
0
雪    币: 279
活跃值: (266)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢blowfish,知道该看什么书了。
2004-6-5 20:20
0
游客
登录 | 注册 方可回帖
返回
//