成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C# COM組件開發之界面窗體

開發 后端
這里我們將介紹C# COM組件開發之界面窗體,希望通過本文能讓大家對C# COM組件開發有所了解。
C# COM組件開發,我們這里將講到的是界面窗體的開發。將從定義接口開始,再講類的實現以及用Regasm 工具進行注冊等等,希望對大家有所幫助。

C# COM組件開發1,定義接口

(1)在接口上方加上[Guid("1EA4DBF0-3C3B-11CF-810C-00AA00389B71")]

(2)在每個方法上加上[DispId(i)]

  1. using System;  
  2. using System.Runtime.InteropServices;  
  3. namespace Leading.Mis.NewsMonitor  
  4. ......{  
  5.     /**//**//**//// <summary> 
  6.     /// 消息監控接口的定義  
  7.     /// </summary> 
  8.     [Guid("1EA4DBF0-3C3B-11CF-810C-00AA00389B71")]  
  9.     public interface INewsMonitor  
  10.     ......{  
  11.         發送文件時,記錄發送者,接收者和發送的文件名發送文件時,記錄發送者,接收者和發送的文件名#region 發送文件時,記錄發送者,接收者和發送的文件名  
  12.         /**//**//**//// <summary> 
  13.         /// 當發送文件時,記錄發送者,接收者和發送的文件名  
  14.         /// </summary> 
  15.         /// <param name="strSendID">文件發送者</param> 
  16.         /// <param name="strTargetID">文件接受者</param> 
  17.         /// <param name="strFileName">文件名</param> 
  18.      [DispId(1)]  
  19.         void SendFile(string strSendID,string strTargetID,string strFileName);  
  20.         #endregion  
  21.           
  22.         接收文件時,記錄文件接收者,發送者和發送的文件名接收文件時,記錄文件接收者,發送者和發送的文件名#region 接收文件時,記錄文件接收者,發送者和發送的文件名  
  23.         /**//**//**//// <summary> 
  24.         /// 接受文件時,記錄文件接收者,發送者和發送的文件名  
  25.         /// </summary> 
  26.         /// <param name="strReceiveID">文件接收者</param> 
  27.         /// <param name="strSendID">文件發送者</param> 
  28.         /// <param name="strFileName">文件名</param> 
  29.         [DispId(2)]  
  30.         void RecvFile(string strReceiveID,string strSendID,string strFileName);  
  31.         #endregion  
  32.           
  33.         文件發送成功后,記錄發送者,接收者和發送的文件名文件發送成功后,記錄發送者,接收者和發送的文件名#region 文件發送成功后,記錄發送者,接收者和發送的文件名  
  34.         /**//**//**//// <summary> 
  35.         /// 文件發送成功后,記錄發送者,接收者和發送的文件名  
  36.         /// </summary> 
  37.         /// <param name="strSendID">文件發送者</param> 
  38.         /// <param name="strTargetID">文件接收者</param> 
  39.         /// <param name="strFileName">文件名</param> 
  40.         [DispId(3)]  
  41.         void  FileSendOK(string strSendID,string strTargetID,string strFileName);  
  42.         #endregion  
  43.           
  44.         取消文件發送時,記錄發送者,接收者和發送的文件名取消文件發送時,記錄發送者,接收者和發送的文件名#region 取消文件發送時,記錄發送者,接收者和發送的文件名  
  45.         /**//**//**//// <summary> 
  46.         /// 取消文件發送時,記錄發送者,接收者和發送的文件名  
  47.         /// </summary> 
  48.         /// <param name="strCancelID">取消文件發送者</param> 
  49.         /// <param name="strTargetID">文件發送對方</param> 
  50.         /// <param name="strFileName">文件名</param> 
  51.         [DispId(4)]  
  52.         void FileSendCancel(string strCancelID,string strTargetID,string strFileName);  
  53.         #endregion  
  54.           
  55.     } // end interface INewsMonitor  
  56.       
  57. } //end namespace Leading.Mis.NewsMonitor 

C# COM組件開發2,類的實現

(1)在類的上方加上 [Guid("1EA4DBF0-3C3B-11CF-810C-00AA00389B71")]
                      [ClassInterface(ClassInterfaceType.None)] 

  1. using System;  
  2. using System.IO;  
  3. using System.Runtime.InteropServices;  
  4.  
  5. namespace Leading.Mis.NewsMonitor  
  6. ......{  
  7.     /**//**//**//// <summary>  
  8.     /// 消息監控類的實現  
  9.     /// </summary>  
  10.     [Guid("1EA4DBF0-3C3B-11CF-810C-00AA00389B71")]  
  11.     [ClassInterface(ClassInterfaceType.None)]  
  12.     public class NewsMonitor : INewsMonitor  
  13.     ......{  
  14.         私有字段#region 私有字段  
  15.           
  16.         private string filePath = string.Empty;  
  17.         private string writeLine = string.Empty;  
  18.           
  19.         #endregion  
  20.  
  21.         私有方法#region 私有方法  
  22.           
  23.         private  void NewsMsg()  
  24.         ......{  
  25.             StreamWriter sw = null;  
  26.             if(File.Exists(filePath))  
  27.             ......{  
  28.                 sw = File.AppendText(filePath);  
  29.             }  
  30.             else 
  31.             ......{  
  32.                 FileStream fs = File.Create(filePath);  
  33.                 sw = new StreamWriter(fs);  
  34.             }  
  35.             sw.WriteLine(writeLine);  
  36.             sw.Close();  
  37.         }  
  38.           
  39.         #endregion  
  40.           
  41.         共有方法#region 共有方法  
  42.           
  43.         發送文件時,記錄發送者,接收者和發送的文件名#region 發送文件時,記錄發送者,接收者和發送的文件名  
  44.     /**//// <summary>  
  45.         /// 當發送文件時,記錄發送者,接收者和發送的文件名  
  46.     /// </summary>  
  47.         /// <param name="strSendID">文件發送者</param>  
  48.         /// <param name="strTargetID">文件接受者</param>  
  49.         /// <param name="strFileName">文件名</param>  
  50.                public void SendFile(string strSendID,string strTargetID,string strFileName)  
  51.         ......{  
  52.             filePath = @"c:MsgMonitorSendFile.txt";  
  53.             writeLine = strSendID + " 向 " + strTargetID + " 發送 < " + strFileName + " > 文件";  
  54.             NewsMsg();  
  55.         }  
  56.         #endregion  
  57.           
  58.      接收文件時,記錄文件接收者,發送者和發送的文件名#region 接收文件時,記錄文件接收者,發送者和發送的文件名  
  59.     /**//// <summary>  
  60.         /// 接受文件時,記錄文件接收者,發送者和發送的文件名  
  61.     /// </summary>  
  62.         /// <param name="strReceiveID">文件接收者</param>  
  63.         /// <param name="strSendID">文件發送者</param>  
  64.         /// <param name="strFileName">文件名</param>  
  65.                public void RecvFile(string strReceiveID,string strSendID,string strFileName)  
  66.         ......{  
  67.             filePath = @"c:MsgMonitorRecvFile.txt";  
  68.             writeLine = strReceiveID + " 接收到 " + strSendID + " 發送的 < " + strFileName + " > 文件";  
  69.             NewsMsg();   
  70. }  
  71.         #endregion  
  72.           
  73.         文件發送成功后,記錄發送者,接收者和發送的文件名#region 文件發送成功后,記錄發送者,接收者和發送的文件名  
  74.     /**//// <summary>  
  75.         /// 文件發送成功后,記錄發送者,接收者和發送的文件名  
  76.     /// </summary>  
  77.         /// <param name="strSendID">文件發送者</param>  
  78.         /// <param name="strTargetID">文件接收者</param>  
  79.         /// <param name="strFileName">文件名</param>  
  80.                public void  FileSendOK(string strSendID,string strTargetID,string strFileName)  
  81.         ......{  
  82.             filePath = @"c:MsgMonitorFileSendOK.txt";  
  83.             writeLine = strSendID + " 已經成功向 " + strTargetID + " 發送 < " + strFileName + " > 文件";  
  84.             NewsMsg();  
  85.         }  
  86.         #endregion  
  87.           
  88.        取消文件發送時,記錄發送者,接收者和發送的文件名#region 取消文件發送時,記錄發送者,接收者和發送的文件名  
  89.     /**//// <summary>  
  90.         /// 取消文件發送時,記錄發送者,接收者和發送的文件名  
  91.     /// </summary>  
  92.         /// <param name="strCancelID">取消文件發送者</param>  
  93.         /// <param name="strTargetID">文件發送對方</param>  
  94.         /// <param name="strFileName">文件名</param>  
  95.                public void FileSendCancel(string strCancelID,string strTargetID,string strFileName)  
  96.         ......{  
  97.             filePath = @"c:MsgMonitorFileSendCancel.txt";  
  98.             writeLine = strCancelID + " 取消和 " + strTargetID + " 發送 < " + strFileName + " > 文件";  
  99.             NewsMsg();  
  100.         }  
  101.         #endregion  
  102.           
  103.         #endregion   
  104.     } // end class NewsMonitor  
  105.       
  106. //end namespace Leading.Mis.NewsMonitor 

C# COM組件開發3,用 Regasm 工具進行注冊

  1. Regasm NewsMsg.dll / tlb: NewsMsg.tlb 

【編輯推薦】

  1. C#參差數組初始化概述
  2. C#數組初始化全面分析
  3. C#一維數組和多維數組淺談
  4. C#參差數組初始化概述
  5. C#動態數組實例介紹
責任編輯:彭凡 來源: itgrass
相關推薦

2009-08-20 11:03:34

Visual C#使用

2009-09-02 16:43:55

C#調用Excel的C

2009-08-21 09:14:47

C# Excel CO

2009-09-24 15:10:54

C#調用COM組件

2009-08-03 14:36:08

c#組件

2009-09-07 06:18:57

C#窗體設計器

2009-09-18 19:09:41

C# COM組件

2009-07-03 10:33:07

C#創建COM組件

2009-08-10 14:23:39

C# Setting

2009-08-20 10:10:55

C#透明窗體

2009-09-24 14:59:38

C#編寫COM組件

2024-07-03 08:21:56

MDI窗體界面

2024-07-09 17:09:49

C#開發Windows窗體

2009-08-13 10:42:31

C#窗體拖動事件

2009-09-07 06:07:46

C#窗體設計

2009-08-28 15:58:54

C#窗體里調用

2009-09-07 04:19:56

C#窗體事件

2009-09-07 06:31:32

C#窗體移動

2009-09-07 06:48:13

C#透明窗體

2009-08-19 14:35:12

C++和C#相互調用C
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久se精品一区精品二区 | 色婷婷婷婷色 | 国产精品大片在线观看 | 亚洲第一中文字幕 | 国产精品高清在线 | 99九九久久 | 精品综合视频 | 免费一看一级毛片 | 日本不卡一区二区三区在线观看 | 亚洲一区精品在线 | 亚洲 91| 色婷婷激情综合 | 高清国产一区二区 | 亚洲精品国产一区 | 亚洲乱码一区二区三区在线观看 | 亚洲瑟瑟 | 日韩中文字幕久久 | 精品国产乱码久久久久久闺蜜 | 天天干狠狠操 | 亚洲午夜av | 在线观看亚洲精品视频 | 看毛片的网站 | jlzzjlzz欧美大全 | 日本午夜视频 | 在线观看中文字幕dvd播放 | 久久艹免费视频 | 九九九视频在线 | 在线视频国产一区 | 国产精品无码专区在线观看 | 日韩欧美一区在线 | www.色53色.com| 欧美激情精品久久久久久 | 可以在线观看av的网站 | 国产色在线 | 97在线观看 | 欧美久久精品一级c片 | 国产色婷婷久久99精品91 | 粉色午夜视频 | 91伊人| 天天操天天摸天天干 | 国产高清一区二区 |