API是预先定义的接口,以供程序员调用。是一套用来控制系统各个部件的预先定义的函数。 *** 作方式如下:
1、在C++调用系统API之前需要声明相应的头文件。这里使用系统函数 MessageBoxA ,对应头文件: ”windows.h“。
2、使用尖括号,编译器会先在include目录搜索该头文件;如果未找到,才会在源代码所在目录搜索。2、使用双引号则相反,会先在源代码目录搜索;通常用于包含程序作者自行编写的头文件。
3、可以在第三部的图中看到 MessageBoxA 函数包含四个参数。函数括号内部为参数,每个参数之间用英文逗号隔开。当鼠标指在函数上时,会出现函数说明信息。
4、参数中的NULL为常量0,代表不设置或默认设置。也可以不使用常量,直接写作0。
5、MessageBoxA 函数运行如图所示。
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As LongPrivate Declare Function OpenProcess Lib "kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessID As Long) As Long
Private Const PROCESS_TERMINATE = &H1
Private hProcess As Long
'打开进程
Private Sub Command1_Click()
Dim pid As Long
pid = Shell("C:\WINDOWS\System32\calc.exe", vbNormalFocus)
If pid = 0 Then
MsgBox "没有打开程序"
Else
hProcess = OpenProcess(PROCESS_TERMINATE, 0, pid)
End If
End Sub
'关闭进程
Private Sub Command2_Click()
Dim l As Long
l = TerminateProcess(hProcess, 1)
If l <>0 Then
MsgBox "成功关闭"
Else
MsgBox "未关闭"
End If
End Sub
另:
Private Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Private Sub Command1_Click()
WinExec "c:/windows/system32/calc.exe", 6
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)