偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

VB.NET Dllimport特性?xún)?nèi)容概述

開(kāi)發(fā) 后端
VB.NET Dllimport特性是這一面向?qū)ο笳Z(yǔ)言的一個(gè)比較特殊的特性。我們會(huì)在這里為大家詳細(xì)介紹這一比較先進(jìn)的功能,方便大家理解。

VB.NET的出現(xiàn),為我們帶來(lái)了很多新穎的特性。在很大程度上增加了開(kāi)發(fā)人員的編程效率。在這里我們就一起來(lái)體驗(yàn)它的一些特性?xún)?yōu)點(diǎn)。我們可以使用Declare語(yǔ)句調(diào)用外部DLL中的過(guò)程。但VB.NET給我們提供了另外一種更加先進(jìn)的----- 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 

 

這樣就可以不任何代碼實(shí)現(xiàn)便可以調(diào)用外部的Dll,即使我們改變方法名為FindwindowA,也可以順利的實(shí)現(xiàn)調(diào)用,因?yàn)槭褂肈llimport特性編譯器可以自動(dòng)追蹤實(shí)際的過(guò)程以及方法!#t#

另外,VB.NET Dllimport特性支持幾種可選的參數(shù),來(lái)精確定義調(diào)用外部過(guò)程的方式,以及外部過(guò)程的返回值方式.

CharSet 參數(shù):用于說(shuō)明字符串傳遞給外部過(guò)程的方式,可以是CharSet.Ansi(默認(rèn)),CharSet.Unicode.CharSet.Auto.

ExactSpelling參數(shù):用于指定方法名是否和DLL中的名稱(chēng)完全一致,默認(rèn)值為T(mén)rue.

EntryPoint參數(shù):用于指定DLL中的實(shí)際函數(shù)名稱(chēng).

CallingConvention參數(shù):為入口點(diǎn)指定調(diào)用的約定,值有WinApi(默認(rèn)值),CDecl,FastCallStdCall和ThisCall.

SetLastError參數(shù):判斷被調(diào)用函數(shù)是否設(shè)置了最近一次Win32錯(cuò)誤代碼,如果設(shè)置為T(mén)rue則可以通過(guò)Err.LastDllError方法或Marshal.GetLastWin32Error方法讀取這些代碼.

PreServeSig參數(shù):為一個(gè)Boolean值,如果為T(mén)rue ,則將告訴編譯器,方法不應(yīng)被轉(zhuǎn)換為一個(gè)返回HRESULT值函數(shù).

下面使用VB.NET Dllimport特性來(lái)調(diào)用myFunction.dll中的名為friend(friend為VB保留名稱(chēng))的方法.Dllimport特性帶有Unicode字符串,并影響Win32錯(cuò)誤代碼:

 

  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 

 

責(zé)任編輯:曹凱 來(lái)源: zdnet.com.cn
相關(guān)推薦

2010-01-13 10:53:24

VB.NET控件

2010-01-18 10:33:28

VB.NET基本函數(shù)

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訪(fǎng)問(wèn)類(lèi)型

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集合存儲(chǔ)

2010-01-07 15:18:10

VB.NET常量

2010-01-22 17:22:49

VB.NET事件訪(fǎng)問(wèn)器

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數(shù)據(jù)類(lèi)型

2010-01-14 13:35:36

VB.NET特殊操作符

2010-01-18 13:46:32

VB.NET條件分支語(yǔ)

2009-10-13 14:19:03

VB.NET面向?qū)ο缶?/a>

2010-01-13 11:03:13

VB.NET聲音播放
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)