关于ATL的一些技巧

     本文收集ATL的一些技巧。

一、VC6.0带的ATL在COM组件注册时,使用了8.3规则的文件名,主要是为了兼容NT4.0,如果要使用长文件名,可以直接对atlbase.h作些改动。
    打开atlbase.h找到inline HRESULT WINAPI CComModule::UpdateRegistryFromResourceS(UINT nResID, BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries)函数定义中的

// Convert to short path to work around bug in NT4's CreateProcess
//   TCHAR szModuleShort[_MAX_PATH];
//   GetShortPathName(szModule, szModuleShort, _MAX_PATH);
//   LPOLESTR pszModule = T2OLE(szModuleShort);                        // ATL短路径的Bug [9/10/2008 冰峰]
   LPOLESTR pszModule = T2OLE(szModule);
   像我上面这样注释掉即可。

   上面的改动只对Release起作用,Debug版本还要在同一个文件中找AtlModuleUpdateRegistryFromResourceD函数,像上面那样注释掉相应的代码。

二、Other
    ……   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值