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

VB.NET Dllimport特性內容概述

開發 后端
VB.NET Dllimport特性是這一面向對象語言的一個比較特殊的特性。我們會在這里為大家詳細介紹這一比較先進的功能,方便大家理解。

VB.NET的出現,為我們帶來了很多新穎的特性。在很大程度上增加了開發人員的編程效率。在這里我們就一起來體驗它的一些特性優點。我們可以使用Declare語句調用外部DLL中的過程。但VB.NET給我們提供了另外一種更加先進的----- VB.NET Dllimport特性。

如:

 

  1. Imports System.Runtime.
    InteropServices  
  2. < DllImport("user32")> _  
  3. Function Findwindow(ByVal 
    lpClassName As String, ByVal 
    lpWindowName As String) As Integer  
  4. End Function  
  5. < DllImport("user32")> _  
  6. Function MoveWindow(ByVal hWnd
     As String, ByVal x As Integer, 
    ByVal y As Integer, ByVal nWidth 
    As Integer, ByVal nHeight As 
    Integer, ByVal bRepaint As Integer) 
    As Integer  
  7. End Function  
  8. Sub Test()  
  9. Dim hWnd As Integer = Findwindow
    (Nothing, "Untitled-Nodepad")  
  10. If hWnd < > 0 Then MoveWindow
    (hWnd, 0, 0, 600, 300, 1)  
  11. End Sub 

 

這樣就可以不任何代碼實現便可以調用外部的Dll,即使我們改變方法名為FindwindowA,也可以順利的實現調用,因為使用Dllimport特性編譯器可以自動追蹤實際的過程以及方法!#t#

另外,VB.NET Dllimport特性支持幾種可選的參數,來精確定義調用外部過程的方式,以及外部過程的返回值方式.

CharSet 參數:用于說明字符串傳遞給外部過程的方式,可以是CharSet.Ansi(默認),CharSet.Unicode.CharSet.Auto.

ExactSpelling參數:用于指定方法名是否和DLL中的名稱完全一致,默認值為True.

EntryPoint參數:用于指定DLL中的實際函數名稱.

CallingConvention參數:為入口點指定調用的約定,值有WinApi(默認值),CDecl,FastCallStdCall和ThisCall.

SetLastError參數:判斷被調用函數是否設置了最近一次Win32錯誤代碼,如果設置為True則可以通過Err.LastDllError方法或Marshal.GetLastWin32Error方法讀取這些代碼.

PreServeSig參數:為一個Boolean值,如果為True ,則將告訴編譯器,方法不應被轉換為一個返回HRESULT值函數.

下面使用VB.NET Dllimport特性來調用myFunction.dll中的名為friend(friend為VB保留名稱)的方法.Dllimport特性帶有Unicode字符串,并影響Win32錯誤代碼:

 

  1. < DllImport("myFunction.dll", 
    EntryPoint:="Friend"CharSet
    CharSet:=CharSet.Unicode, 
    SetLastError:=True)> _  
  2. Function MakeFriends(ByVal sl 
    As String, ByVal s2 As String) 
    As Integer  
  3. End Function 

 

責任編輯:曹凱 來源: zdnet.com.cn
相關推薦

2010-01-13 10:53:24

VB.NET控件

2010-01-18 10:33:28

VB.NET基本函數

2010-01-12 17:54:42

VB.NET Dlli

2009-10-15 16:44:47

VB.NET Opti

2009-10-14 16:04:43

VB.NET Noti

2010-01-15 10:47:15

VB.NET命名空間

2009-10-13 14:38:10

VB.NET訪問類型

2010-01-13 11:11:42

VB.NET Date

2009-10-14 09:29:43

VB.NET加密

2009-10-26 17:53:50

VB.NET新窗體

2010-01-15 16:46:05

VB.NET集合存儲

2010-01-07 15:18:10

VB.NET常量

2010-01-22 17:22:49

VB.NET事件訪問器

2010-01-15 18:56:58

VB.NET Fiel

2009-11-03 09:37:33

VB.NET重載

2010-01-20 18:14:58

VB.NET數據類型

2010-01-14 13:35:36

VB.NET特殊操作符

2010-01-18 13:46:32

VB.NET條件分支語

2009-10-13 14:19:03

VB.NET面向對象編

2010-01-13 11:03:13

VB.NET聲音播放
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一区二区三区大片 | 一区二区三区国产精品 | 国产精品视频一区二区三区四区国 | 男女视频网站 | 一区二区三区在线免费观看 | 91精品国产自产在线老师啪 | 久久黄色网 | 免费看一区二区三区 | 亚洲精品成人在线 | 日韩三片 | 9191av| 国产97碰免费视频 | 欧美中文字幕一区二区 | 请别相信他免费喜剧电影在线观看 | 青青草中文字幕 | 国产影音先锋 | 操操日 | 三级高清| 亚洲精品久久久久久一区二区 | 欧美爱爱视频 | 亚洲视频在线观看一区二区三区 | 日韩激情视频一区 | 亚州精品天堂中文字幕 | 国产免费拔擦拔擦8x高清 | 中文字幕一区二区三区在线观看 | 欧美精品一区二区三区在线播放 | 国产精品特级片 | 香蕉大人久久国产成人av | 91久久久久久久久久久久久 | 在线观看av不卡 | 在线日韩视频 | 视频在线日韩 | av网站免费 | 婷婷丁香在线视频 | 国产一区二区三区不卡av | a级在线免费视频 | 黄色成人在线观看 | 中文字幕爱爱视频 | 国产欧美精品一区二区 | 亚洲巨乳自拍在线视频 | 成人网址在线观看 |