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

全面討論VB.NET申明Windows API函數

開發 后端
這里介紹在VB.NET申明Windows API函數時,“Declare”語句中Alias關鍵字的作用相當于使用DllImport特征類中的EntryPoint對象字段。

VB.NET還是比較常用的,于是我研究了一下VB.NET申明Windows API函數,在這里拿出來和大家分享一下,希望對大家有用。VB.NET查看文件中圖標的函數及VB.NET申明Windows API的方法:

VB.NET要實現查看文件中的圖標,目前只使用.Net FrameWork SDK是無法實現這種功能的,正如前面所說,主要是由于.Net FrameWork SDK推出的時間較短,其功能還不可能面面俱到。解決問題的關鍵是正確使用Windows API函數,其中所涉及到的Windows API函數主要有二個:其一是獲得指定文件中的圖標數目;其二是從指定文件的指定位置導出圖標的Windows句柄。這二個函數都位于 “Shell32.dll”文件中,并且函數的入口點都為“ExtractIcon”。下面是在VB.NET中分別使用DllImport特征類和“Declare”語句申明這二個Windows API函數的具體方法。

1.使用DllImport特征類來申明Windows API函數:

下面是在VB.NET中使用DllImport特征類申明二個Windows API函數的具體示例:

  1. '函數ExtractIcon,其功能是是從指定文件的指定位置導出圖標的Windows句柄。  
  2. < System.Runtime.InteropServices.DllImport ( "Shell32.dll" , EntryPoint :"ExtractIcon" ) > _  
    Public Function _  ExtractIcon ( ByVal src As System.IntPtr , ByVal strFileName As string , 
    ByVal uiIconIndex As UInt32 ) As System.IntPtr  
  3. End Function  
  4. '函數Icon_Num,其功能是獲得指定文件中的圖標數目  
  5. < System.Runtime.InteropServices.DllImport ( "Shell32.dll" , EntryPoint :"ExtractIcon" ) > _  
    Public Function _  Icon_Num ( ByVal src As System.IntPtr , ByVal strFileName As string , 
    ByVal uiIconIndex As Integer ) As Integer  
  6. End Function 

在使用DllImport特征類申明Windows API函數時,如果申明的函數名稱和函數的入口點相同,則可以在VB.NET申明Windows API函數時,省略定義函數入口點對應的代碼,即EntryPoint對象字段對應的代碼,這樣聲明ExtractIcon函數的代碼也可以簡化為如下所示:

  1. < System.Runtime.InteropServices.DllImport ( "Shell32.dll" ) > _  
    Public Function _  ExtractIcon ( ByVal src As System.IntPtr , 
    ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr  
  2. End Function 

2.使用“Declare”語句來申明Windows API函數:

使用“Declare”語句的確比使用DllImport特征類要簡單了許多,下面是在VB.NET中使用“Declare”語句來聲明上述二個Windows API函數的具體方法:

  1. Declare Auto Function ExtractIcon Lib "Shell32.dll" Alias "ExtractIcon" 
    ( ByVal src As System.IntPtr , ByVal strFileName As string , 
    ByVal uiIconIndex As UInt32 ) As System.IntPtr  
  2. '聲明ExtractIcon函數  
  3. Declare Auto Function Icon_Num Lib "Shell32.dll" Alias "ExtractIcon" 
    ( ByVal src As System.IntPtr , ByVal strFileName As string , 
    ByVal uiIconIndex As Integer ) As Integer  
  4. '聲明Icon_Num函數 

在VB.NET申明Windows API函數時,“Declare”語句中Alias關鍵字的作用相當于使用DllImport特征類中的EntryPoint對象字段。同樣在使用 “Declare”語句聲明Windows API函數時,如果聲明的函數和函數的入口點相同,也可以省略Alias關鍵字對應的代碼,所以ExtractIcon函數也可以簡化為如下:

  1. Declare Auto Function ExtractIcon Lib "Shell32.dll" ( ByVal src As System.IntPtr , 
    ByVal strFileName As string , ByVal uiIconIndex As UInt32 ) As System.IntPtr 

【編輯推薦】

  1. 全方位分析VB.NET編碼規范
  2. 詳細說明VB.NET變量中四點
  3. 三類十二種VB.NET數據類型全面介紹
  4. VB.NET初步知識,初學者必看
  5. 具體介紹四大類VB.NET循環
責任編輯:佚名 來源: IT168
相關推薦

2009-10-15 17:50:48

VB.NET調用API

2009-11-03 12:52:38

VB.NET Wind

2009-10-15 09:02:19

VB.NET申明數組

2009-10-15 09:16:35

VB.NET重新申明數

2009-10-26 10:44:27

VB.NET API函

2009-11-03 13:02:28

VB.NET Wind

2009-10-26 15:26:37

VB.NET屬性

2010-01-12 15:21:48

VB.NET權限控制

2009-10-28 10:04:53

VB.NET XmlW

2009-10-20 10:29:30

VB.NET使用Sor

2009-10-29 10:45:01

VB.NET設置控件

2009-10-28 17:44:31

VB.NET語言

2009-10-19 17:42:31

VB.NET API函

2009-10-28 14:00:02

VB.NET文件處理

2009-11-04 10:54:53

VB.NET MOVE

2009-10-15 10:57:16

VB.NET Text

2009-10-29 15:16:02

VB.NET文件傳送

2009-10-14 15:20:21

VB.NET窗體指針

2009-11-02 14:48:45

VB.NET HOOK

2009-11-02 15:57:36

VB.NET WEB
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 伊人久久综合 | av一级| 免费观看一区二区三区毛片 | www国产亚洲精品 | 最近日韩中文字幕 | 青青草社区 | 久久精品免费一区二区 | 国产在线观看一区 | 天天亚洲| 久久看片 | 一区中文字幕 | 91在线视频精品 | 日韩一级免费电影 | 午夜精品久久久久久久久久久久久 | 亚洲一av | 久久久久国产精品www | 国产日韩欧美一区二区 | 久久国产婷婷国产香蕉 | 色就干 | jdav视频在线观看免费 | 黄色一级大片在线免费看产 | 中文字幕日韩在线观看 | 日韩精品一区二区三区视频播放 | 欧美国产91 | 久久三区| 九九热在线免费视频 | www.99热.com | 免费国产一区 | av午夜激情| 国产成人啪免费观看软件 | 久久久久久国模大尺度人体 | 国产a视频 | 黄色香蕉视频在线观看 | 免费国产一区二区 | aaaaaaa片毛片免费观看 | 久久久久成人精品 | 91xxx在线观看| 欧美一区中文字幕 | 精品三区 | 国产高清精品一区二区三区 | 国产视频二区 |