程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> C#中的常用例程

C#中的常用例程

編輯:.NET實例教程
從C#中調用COM組件 (後期連接)
.Net框架是COM的一個自然發展,兩者共享許多核心要素,這包括組件的再利用以及語言的種 立性。
為了向後兼容,COM Interop可以使用現存的COM組件而不要求對原始組件進行修改。當一個
框架開發人員想將COM代碼合並到一個管理應用程序中時,就可以用COM Interop功能引入相相關的CO
類型。引入之後,這個COM類型就可以使用了。這屬於前期連接。但是有時候你需要對象的漢 期連接,
這在.Net中也能實現,使用名稱空間映射就可以通過後期連接來調用COM對象。
  
這裡介紹一個應用程序例程,它將調用Excel,並且通過使用後期連接使它可視。
後期連接將使用Reflectionb的Type類,這個Type類有許多方法可以取得COM對象,
GetTypeFromProgID("Application"),這個方法從系統注冊表中得到COM ID,
然後使用STATIC類的成員 Activator.CreateInstance()創建這個COM對象的一個新例示。
  
要想調用COM對象的方法、函數和屬性,就必須使用包含正確設置的Type對象的InvokeMethood()方法。
這個方法接受一些參數變量,其中最重要的一個是方法類型的ex屬性(get或set)。在例子子中我們?
Excel.Visible使用了set屬性,從而使Excel應用程序可視。
我們將嘗試在.Net環境中調用Excel應用程序。這是一個後期連接應用程序,因為如果是前破 連接的話
就需要使用COM對象的RCW(RunTime Callable Wraper)來完成下面的命令行程序tblimp所屯 成的任務:
ex. c:\> tblimp /out:
  
//Variable
Type Excel;
object[] parameter= new object[1];
object ExcelObject;
try
{
excel = Type.GetTypeFromProgID("Excel.Application");
excelObject = Activator.CreateInstance(Excel);
parameter[0] = true;
excel.InvokeMember("Visible", BindingFlags.SetProperty, null, ExcelObject, parammeter);
}
catch(Exception e)
{
Console.WriteLine("Error Stack {0} ", e.Message) ;
}
finally
{
//When this object is destroyed the Excel application will be closed
//So Sleep for sometime and see the Excel application
Thread.Sleep(5000);
//Relaese the object
//GC.RunFinalizers()
}
  
  
1.如何讀取Windows注冊表信息?
public static int Main(string[] args)
{
RegistryKey SUBKEY;
RegistryKey TAWKAY = RegistryKey.OpenRemoteBaseKey(Microsoft.Win32.RegistryHive..CurrentUser,"");
string subkey = "Software\\TAW\\BSE";
SUBKEY = TAWKAY.OpenSubKey(subkey);
object dsn = SU
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved