1、在VS2003中,新建ATL工程,“應用程式設定”中服務器型別選擇為“可執行檔案(EXE)”,生成工程后,再添加ATL簡單物件,名稱為“test”。添加完成后,工程順利通過編譯。其中,“test.rgs”檔案如下:
HKCR
{
ATLProject.test.1 = s 'test Class'
{
CLSID = s '{83E12663-E404-4F2F-9873-E34621101AFC}'
}
ATLProject.test = s 'test Class'
{
CLSID = s '{83E12663-E404-4F2F-9873-E34621101AFC}'
CurVer = s 'ATLProject.test.1'
}
NoRemove CLSID
{
ForceRemove {83E12663-E404-4F2F-9873-E34621101AFC} = s 'test Class'
{
ProgID = s 'ATLProject.test.1'
VersionIndependentProgID = s 'ATLProject.test'
ForceRemove 'Programmable'
LocalServer32 = s '%MODULE%'
val AppID = s '%APPID%'
'TypeLib' = s '{17801ADA-B5B6-47BD-BE1E-D01FD98450E7}'
}
}
}
ATLProject_i.c檔案中:
MIDL_DEFINE_GUID(IID, IID_Itest,0x99DB507B,0xB6D7,0x4F61,0x98,0x81,0xEE,0x6B,0x5E,0x84,0x0A,0x14);
MIDL_DEFINE_GUID(IID, LIBID_ATLProjectLib,0x17801ADA,0xB5B6,0x47BD,0xBE,0x1E,0xD0,0x1F,0xD9,0x84,0x50,0xE7);
MIDL_DEFINE_GUID(CLSID, CLSID_test,0x83E12663,0xE404,0x4F2F,0x98,0x73,0xE3,0x46,0x21,0x10,0x1A,0xFC);
2、在新版本VS中(作業系統:win10企業版,VS:VS2017 Professional)同上一樣的方法新建ATL工程,建立完成后,同樣進行編譯,結果提示出錯,資訊如下:
嚴重性 代碼 說明 專案 檔案 行 禁止顯示狀態
錯誤 MIDL2455 The feature cannot be used on the target system : disable_consistency_check [ Parameter 'apt' of Procedure 'SelectAndPositionItems' ( Interface 'IFolderView' ) ] ATLProject C:\Program Files (x86)\Windows Kits\10\Include\10.0.16299.0\um\shobjidl_core.idl 1666
提示資訊為“>C:\Program Files (x86)\Windows Kits\10\Include\10.0.16299.0\um\shobjidl_core.idl(1666): error MIDL2455: The feature cannot be used on the target system : disable_consistency_check [ Parameter 'apt' of Procedure 'SelectAndPositionItems' ( Interface 'IFolderView' ) ]
1>已完成生成專案“ATLProject.vcxproj”的操作 - 失敗。
”
此時,查看Test.rgs
請問造成以上的原因是什么?怎么解決?謝謝大家
HKCR
{
NoRemove CLSID
{
ForceRemove {58ffef71-bd45-422f-ae37-df6feb76c9c1} = s 'test class'
{
ForceRemove Programmable
LocalServer32 = s '%MODULE%'
{
val ServerExecutable = s '%MODULE_RAW%'
}
TypeLib = s '{754419a8-958c-44ff-ba72-11a8a20c364c}'
Version = s '1.0'
}
}
}
uj5u.com熱心網友回復:
是不是安裝VS2017的時候,相關的組件沒有安裝?轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/73835.html
