[英]How to create a HelloWorld COM Interop in Visual Studio 2012
首先,我是COM新手,目前很困惑。 我已經在MSDN和常規Web上閱讀了很多有關COM的文檔,但其中很多似乎已經過時且過於復雜。
我認為這是使其正常工作所必需的。 還沒有,所以我確定我會丟失一些東西,但是通過提供食譜,希望有人能發現問題:
多虧了答案,我更新了問題以反映組合的解決方案。
請嘗試執行以下步驟:
C:\\Windows\\SysWOW64\\regsvr32.exe c:\\full-path\\ComLib.Interop.dll
看看是否達到7。我認為應該可以。
請注意,您只需要在開發機器上注冊。 孤立的COM應該在其他任何地方都可以工作。
鑒於沒有出現構建錯誤,您可能在步驟2上出錯了。 向導給你添加的那種類的多個選項。 默認選擇是“ C ++類”,您需要選擇ATL +“ ATL簡單對象”。
現在,“類視圖”窗口顯示添加的兩種類型,即IInteropDemo接口和實現該接口的CInteropDemo類。 接下來,右鍵單擊接口類型(而不是類),然后使用“添加方法”。 現在,您還可以查看項目中的IDL文件,該文件應類似於以下內容:
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(CBA0D899-2F4C-4F1D-A935-C80CB981C153),
dual,
nonextensible,
pointer_default(unique)
]
interface IInteropDemo : IDispatch{
[id(1)] HRESULT Method();
};
[
uuid(ED14ACED-4FF9-4144-B302-CC48C481F28B),
version(1.0),
]
library ATLProject4Lib
{
importlib("stdole2.tlb");
[
uuid(8543642F-9927-451C-9784-6A7774418299)
]
coclass InteropDemo
{
[default] interface IInteropDemo;
};
};
足以構建它。 UAC在任何現代Windows版本上都應該失敗,因此會阻止COM服務器注冊。 這需要步驟#0:右鍵單擊快捷方式,然后選擇“以管理員身份運行”,以啟動Visual Studio。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.