API函數很強大,但是聲明的時候比較繁瑣。
我開發的封裝庫,包括窗口、鍵盤、鼠標、消息等常用功能。用戶不需要添加API函數的聲明,就可以用到API的功能。
在VBA、VB6的引用對話框中引用API.tlb文件,就可以用到其中的函數和方法,在VB.Net或C#項目中引用API.dll。
通過對象瀏覽器,可以看到每個類別的函數和方法列表:
而且還有Spy、放大鏡、APIViewer等開發工具。
API封裝庫的下載:
下載壓縮包后,參考下圖進行快速安裝和使用:
課件下載:
https://pan.baidu.com/s/12kEHWWEdkSTp_v1i0OIqGA
C#調用范例下載:
https://pan.baidu.com/s/1SMPFQqp1q0RFuYjgimdREg
免費視頻課程:
VBA編程使用API實現自動化視頻課程(第一季)_共20課時-51CTO學院 http://edu.51cto.com/course/16212.html
VBA編程使用API實現自動化視頻課程(第二季)https://edu.51cto.com/course/18992.html
目前,API函數庫可以被如下語言調用:
- VBA
- VB6
- VBS
- VB.NET
- C#
- Python
- PowerShell
其中,VBA VB6 VB.Net C#通過“引用”對話框可以把API函數庫引入到項目中。
下面分別講解在VBS,Python,PowerShell中調用API函數庫的方法。
VBS
VBS在記事本里編輯,通過CreateObject后期創建對象,例如:
Python
需要用pip install pythonnet安裝clr模塊。然后在py文件中輸入如下內容:
import clr clr.FindAssembly("C:\Program Files\API\API.dll") clr.AddReference("API") import API if __name__ == '__main__': IOther=API.Other() IWindow=API.Window() IOther.Delay(3000) hExcel= IWindow.FindWindow("xlmain",None) IOther.About(hExcel,"API","Ryueifu") print(hExcel)
提前打開Excel,然后運行上述py程序,會在Excel窗口中彈出一個關於對話框。說明調用API成功
PowerShell
PowerShell可以調用.NET語言生成的dll,當然可以調用API.dll。
在PowerShell腳本文件中輸入如下4行代碼:
[void][System.Reflection.Assembly]::LoadFile("C:\Program Files\API\API.dll")
$IWindow=New-Object API.Window
$hNotepad=$IWindow.FindWindow("Notepad","201909PS.txt - Notepad")
Write-Host $hNotepad
提前打開一個記事本,然后運行上述腳本,在控制台窗口可以看到記事本的句柄。