我試圖使用在C#中的JScript.NET中找到的新的ActiveXObject()
的功能。我怎樣才能做到這一點?C#等效於JScript的新ActiveXObject
不要說你可以用COM對象做的任何事情都可以用C#來完成。如果我想這樣做,我已經有了。
我試圖使用在C#中的JScript.NET中找到的新的ActiveXObject()
的功能。我怎樣才能做到這一點?C#等效於JScript的新ActiveXObject
不要說你可以用COM對象做的任何事情都可以用C#來完成。如果我想這樣做,我已經有了。
可以使用
Activator.CreateInstance(Type.GetTypeFromProgID(ProgID))
創建COM對象實例,然後使用後期綁定與他們合作。例如:
using System.Reflection;
...
Type wshType = Type.GetTypeFromProgID("WScript.Shell");
object wshShell = Activator.CreateInstance(wshType);
wshType.InvokeMember("Popup", BindingFlags.InvokeMethod, null, wshShell, new object[] {"Hello, world!"});
,或者使用C#4的dynamic
關鍵字:
// NB: Add reference to Microsoft.CSharp.dll
dynamic wshShell = Activator.CreateInstance(Type.GetTypeFromProgID("WScript.Shell"));
wshShell.Popup("Hello, world!");
我想你只需要引用COM DLL在Add Reference對話框,Visual Studio將創建一個包裝你。在包裝中,你會發現一個你可以實例化的類。 – 2013-04-10 14:54:09
任何只使用記事本的方法?我知道我不該,但我確實。 – Bob 2013-04-10 14:54:42
有很多管道,我會強烈建議使用VS.即使你切換到一個免費版本(也許SharpDevelop或Mono開發可以幫助?) – 2013-04-10 14:57:07