在 vb.net 中如何调用api?

sharkshi 2002-03-18 01:58:37
在 vb.net 中如何调用api?
如你有耐心最好能给个例子最佳,谢!
...全文
122 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wesely 2002-03-22
  • 打赏
  • 举报
回复
Import System.Runtime.InteropServices

Public Class API
Public Shared Function <DllImport("user32.dll")>_
MessageBox(Byval Hwnd As Integer,ByVal [Text] As String,_
ByVal Caption As String, ByVal Type As Integer) As Integer
End Funtion
End Class

这个类就包装了MessageBox API函数,用API.MessageBox(...)调用。
tg123 2002-03-20
  • 打赏
  • 举报
回复
和vb6一样
tg123 2002-03-20
  • 打赏
  • 举报
回复
和vb6一样
dggh 2002-03-18
  • 打赏
  • 举报
回复
请向类或模块的代码顶部添加一条 Imports 语句:
Imports System.Runtime.InteropServices


将以下 Declare 函数添加到项目启动窗体的声明部分,或是添加到要使用 DLL 的类或模块的声明部分中:

Const MB_ICONQUESTION = &H20L
Const MB_YESNO = &H4
Const IDYES = 6
Const IDNO = 7

Declare Auto Function MBox Lib "user32.dll" _
Alias "MessageBox" (ByVal hWnd As Integer, _
ByVal txt As String, ByVal caption As String, _
ByVal Typ As Integer) As Integer

再将以下代码添加到已添加按钮的 Click 事件处理程序中来调用该过程,并提供适当的参数:
Private Sub Button1_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles Button1.Click
Dim RetVal As Integer ' Stores the return value.
RetVal = MBox(0, "Declare DLL Test", "Windows API MessageBox", _
MB_ICONQUESTION Or MB_YESNO)
' Check the return value.
If RetVal = IDYES Then
MsgBox("You chose Yes")
Else
MsgBox("You chose No")
End If
End Sub
acptvb 2002-03-18
  • 打赏
  • 举报
回复
感谢您使用微软产品。

以下网页有一个VB.NET中调用API的简单例子,您可以参考:
http://samples.gotdotnet.com/QuickStart/howto/default.aspx?url=/quickstart/howto/doc/Interop/PInvoke_Simple.aspx

关于在.NET中调用API的更详细的信息,您可以参考以下文档:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/cpconconsumingunmanageddllfunctions.asp?frame=true

- 微软全球技术中心 VB技术支持

本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。

为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧