如何呼叫外部DLL或API

Share

下面這個是一個API宣告式:

Public Declare Function FindWindow Lib “user32″ Alias “FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

現在我來解說

Public = 整個程式可以使用 (可省略)

Declare = 宣告,命令(必要項)

Function = 函數(有傳回值)

FindWindow = 函數名(在你得程式裡識別用)

Lib “user32″ = 要用的dll名稱

Alias “FindWindowA" = 在該DLL裡識別名稱(可省略,若名稱錯誤則無法使用該函數)

(ByVal … As String = 宣告參數為字串,ByVal = 傳入(不影響傳入值)

As Long = 該函數傳回值為長整數。

 


 

所以說,如果你要自己寫一個宣告式,必須按照以下格式

[Public / Private] Declare [Function / Sub] 函數名 Lib “DLL名稱" {Alias “DLL裡的函數名"} ([ByVal / ByRef ] 參數1 As 型別…) As 傳回型別

粗體字 = 擇其一

斜體字 = 可省略


以下是一個IlvMoney的宣告式

Private Declare Function OP Lib “IlvMoney.dll" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer

 

教學結束,請笑纳

 


9 thoughts on “如何呼叫外部DLL或API

  1. 我的意思是
    位啥外掛好像都是一個EXE配上依個DLL
    有沒有其他用意?!..

    一個模組融入程式例步就夠了?!

    P.S 板大.. 小及.. jonah850421..

  2. Private Declare Function OP Lib “IlvMoney.dll” (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
    之後就可以用
    OP ()
    使用?!
    那假設
    把OP改成
    IP一樣可以!?

    另外關於DLL
    如何知道他用法
    未啥浪漫的人好像都知道怎麼用
    I大BLOG上沒有呀…..
    可以加我媽….

    我也想要獨取記憶體..
    用API 也可以八……..

    另外……. 可以問依個問題媽..
    NIMO大MH要有一個DLL?!
    Nimo大
    應該適用API
    在自製衣個函數
    bypass的壓
    位啥還要另外造依個DLL
    ??

  3. 聽不太懂你在講啥= =
    你給我你的即時好了,我慢慢跟你講
    不過I大部落格當然沒有這種教學阿,I大只放外掛的教學
    還有nimo他的MH不是用I大的DLL做出來的
    他是自己做的

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

你可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>