lsxredrain
驱动中牛
驱动中牛
  • 注册日期2006-08-31
  • 最后登录2008-10-18
  • 粉丝1
  • 关注0
  • 积分540分
  • 威望421点
  • 贡献值1点
  • 好评度420点
  • 原创分4分
  • 专家分0分
阅读:1616回复:3

请问怎样去掉NLGetFullPathName获取文件名之的尾巴

楼主#
更多 发布于:2007-05-18 10:57
代码片段
 status = NLAllocateNameControl( &newName, &gFileSpyNameBufferLookasideList );

     if (NT_SUCCESS( status ))
     {
        status = NLGetFullPathName( FileObject,
                                        newName,
                                        &DevExt->NLExtHeader,
                                        LookupFlags | NLFL_USE_DOS_DEVICE_NAME,
                                        &gFileSpyNameBufferLookasideList,
                                        &cacheName );
        nameToUse = &newName->Name;
    
        nameToUse->Buffer[nameToUse->Length] = L'\0';

        KdPrint(("SFilter!SfCreate: %ws\n",nameToUse->Buffer));
     }

     if (newName != NULL) {

            NLFreeNameControl( newName, &gFileSpyNameBufferLookasideList );
        }


运行后结果:
执行保存操作
SFilter!SfCreate: C:\123.txt\:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA
SFilter!SfCreate: C:\123.txt\:QebiesnrMkudrfcoIaamtykdDa:$DATA
SFilter!SfCreate: C:\123.txt\:Docf_QebiesnrMkudrfcoIaamtykdDa:$DATA
SFilter!SfCreate: C:\123.txt\:QebiesnrMkudrfcoIaamtykdDa:$DATA
lsxredrain
驱动中牛
驱动中牛
  • 注册日期2006-08-31
  • 最后登录2008-10-18
  • 粉丝1
  • 关注0
  • 积分540分
  • 威望421点
  • 贡献值1点
  • 好评度420点
  • 原创分4分
  • 专家分0分
沙发#
发布于:2007-05-18 11:31
        Length =nameToUse->Length;

        // trim right '\'
    while ((Length > 3) && (nameToUse->Buffer[Length - 1] == L'\\') && (nameToUse->Buffer[Length - 2] != L':'))
    {
        nameToUse->Buffer[Length] = L'\0';
        -- Length;
    }
yandong_8212
驱动小牛
驱动小牛
  • 注册日期2006-07-28
  • 最后登录2011-02-11
  • 粉丝0
  • 关注0
  • 积分1046分
  • 威望464点
  • 贡献值1点
  • 好评度173点
  • 原创分0分
  • 专家分1分
板凳#
发布于:2007-05-18 11:50
不用去掉,本来就是不可用的.你只管create正确时候的文件名。
商务MSN:YanDong_8212@163.com
lsxredrain
驱动中牛
驱动中牛
  • 注册日期2006-08-31
  • 最后登录2008-10-18
  • 粉丝1
  • 关注0
  • 积分540分
  • 威望421点
  • 贡献值1点
  • 好评度420点
  • 原创分4分
  • 专家分0分
地板#
发布于:2007-05-18 13:09
谢谢,
游客

返回顶部