版块
论坛
喜欢
话题
应用
搜索
登录
注册
wangmingliang的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=191011
请教关于UNICODE_STRING的问题
个位高手,菜鸟请教大家一个问题。我在IRP_MJ_READ中取到文件名后,我想取得文件扩展名。我是这样写的: { UNICODE_STRING FileName; WCHAR Buffer[256]; ...
全文
回复
(
10
)
2008-11-01 11:10
来自版块 -
文件系统(过滤)驱动程序开发
◆
◆
表情
告诉我的粉丝
提 交
wangmingliang
:
怎没人回应呢?
(2008-11-05 09:32)
回复
wangmingliang
:
NTSTATUS SfPassThrough(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) { NTSTATUS ret; ASSERT(!IS_MY_CONTROL_DEVICE_OBJECT( DeviceObje...
(2008-11-04 13:46)
回复
wangmingliang
:
我怎么还没写对呢?应该是if (L"." == FileName.Buffer).对不起大家是笔误。扩展名能取到。但是当执行到下面的return SfPassThrough(DeviceObject,Irp)时就报错了,但是只要把extBuffer[nInde...
(2008-11-04 12:15)
回复
jyss1644
:
if (L"." == FileName.Buffer)不好,应该用RtlCompareMemory()
(2008-11-02 13:53)
回复
Da Vinci
:
if (L"." == FileName.Buffer) 这个不好
(2008-11-02 11:40)
回复
znsoft
:
应该是if (L"." == FileName.Buffer) 这个明显有错误,你想说明什么?这是两个指针比较... 如果你是想知道是不是点,可以这样写 if( L'.' == * FileName.Buffer)
(2008-11-02 10:14)
回复
wangmingliang
:
FileName的Buffer有无串尾符我不能保证,因为是UNICODE_STRING,FileName的Buffer确定已经初始化了;
(2008-11-01 18:31)
回复
wangmingliang
:
我写错了。应该是if (L"." == FileName.Buffer)
(2008-11-01 18:22)
回复
my530
:
你的程序有问题,如 c:\abc.txt.a 用你的程序明显有问题。 如果你用minifilter方便很多,只需用FltGetFileNameInformation,然后FltParseFileNameInformation
(2008-11-01 12:46)
回复
webcat
:
L"." == FileName.Buffer 字符和宽字符指针相等? 这儿我觉得倒不会出现蓝屏,你的Buffer 初始话了吗,字符串有串尾符吗?
(2008-11-01 12:08)
回复
wangmingliang
加关注
写私信
0
关注
0
粉丝
51
帖子
返回顶部