积极答复者
COM组件 如何实现 CLSID 与ProgID的互相调用

问题
答案
-
[DllImport("Ole32.dll", EntryPoint = "CLSIDFromProgID")]
public static extern long CLSIDFromProgID([In, MarshalAs(UnmanagedType.BStr)] string lpszProgID, [Out]out Guid pclsid);
[DllImport("Ole32.dll", EntryPoint = "ProgIDFromCLSID")]
private static extern long ProgIDFromCLSID([In] ref Guid clsid, [MarshalAs(UnmanagedType.LPWStr)] out string lplpszProgID);
使用:
string progid = "Excel.Application";
Guid clsid;
long hr = CLSIDFromProgID( progid, out clsid);
string nprogid = string.Empty;
hr = ProgIDFromCLSID(ref clsid, out nprogid);- 已标记为答案 YiChun Chen 2010年2月3日 10:31
全部回复
-
[DllImport("Ole32.dll", EntryPoint = "CLSIDFromProgID")]
public static extern long CLSIDFromProgID([In, MarshalAs(UnmanagedType.BStr)] string lpszProgID, [Out]out Guid pclsid);
[DllImport("Ole32.dll", EntryPoint = "ProgIDFromCLSID")]
private static extern long ProgIDFromCLSID([In] ref Guid clsid, [MarshalAs(UnmanagedType.LPWStr)] out string lplpszProgID);
使用:
string progid = "Excel.Application";
Guid clsid;
long hr = CLSIDFromProgID( progid, out clsid);
string nprogid = string.Empty;
hr = ProgIDFromCLSID(ref clsid, out nprogid);- 已标记为答案 YiChun Chen 2010年2月3日 10:31