VB.NET调用WinAPI实例探讨

开发 后端
对于初学者来说,要想掌握VB.NET的应用技巧,就应该从实践中去积累经验。今天为大家带来的VB.NET调用WinAPI这一操作方法就能帮助大家提高这方面的经验积累。

VB.NET作为一款功能强大的面向对象语言,为我们带来了很多不一样的体验。我们今天可以通过对VB.NET调用WinAPI的操作技巧的掌握,来体验一下这款语言给我们带来的不同之处,从而初步掌握它的应用技巧。

以下为VB.NET调用WinAPI的演示实例:

  1. Declare Auto Function MBox Lib 
    "user32.dll" _  
  2. Alias "MessageBox" (ByVal hWnd 
    As Integer, _  
  3. ByVal txt As String, ByVal 
    caption As String, _  
  4. ByVal Typ As Integer) As Integer  
  5. '定义一些要调用参数  
  6. Const MB_ICONQUESTION = &H20L  
  7. Const MB_YESNO = &H4  
  8. Const IDYES = 6 
  9. Const IDNO = 7 
  10. Private Sub Button1_Click(ByVal 
    sender As System.Object, ByVal e 
    As System.EventArgs) Handles 
    Button1.Click  
  11. Dim RetVal As Integer ' 存储返回的值.  
  12. RetVal = MBox(0, "调用WinApi成功否?", 
    "Windows API 信息框", _  
  13. MB_ICONQUESTION Or MB_YESNO)  
  14. ' Check the return value.  
  15. If RetVal = IDYES Then  
  16. MsgBox("您选择了是")  
  17. Else  
  18. MsgBox("您选择了不是")  
  19. End If  
  20. End Sub 

以下附上本CALLAPI.vb的所有代码。各位可根据自己的要求对这段VB.NET调用WinAPI代码自行修改。

  1. Public Class CallApi  
  2. Inherits System.Windows.Forms.Form  
  3. Declare Auto Function MBox Lib 
    "user32.dll" _  
  4. Alias "MessageBox" (ByVal hWnd
     As Integer, _  
  5. ByVal txt As String, ByVal 
    caption As String, _  
  6. ByVal Typ As Integer) As Integer  
  7. '定义一些要调用参数  
  8. Const MB_ICONQUESTION = &H20L  
  9. Const MB_YESNO = &H4  
  10. Const IDYES = 6 
  11. Const IDNO = 7 
  12. #Region " Windows Form Designer 
    generated code "  
  13. Public Sub New()  
  14. MyBase.New()  
  15. 'This call is required by the 
    Windows Form Designer.  
  16. InitializeComponent()  
  17. 'Add any initialization after the 
    InitializeComponent() call  
  18. End Sub  
  19. 'Form overrides dispose to clean 
    up the component list.  
  20. Protected Overloads Overrides Sub 
    Dispose(ByVal disposing As Boolean)  
  21. If disposing Then  
  22. If Not (components Is Nothing) Then  
  23. components.Dispose()  
  24. End If  
  25. End If  
  26. MyBase.Dispose(disposing)  
  27. End Sub  
  28. 'Required by the Windows 
    Form Designer  
  29. Private components As System.
    ComponentModel.IContainer  
  30. 'NOTE: The following procedure is 
    required by the Windows Form Designer  
  31. 'It can be modified using the 
    Windows Form Designer.   
  32. 'Do not modify it using the code editor.  
  33. Friend WithEvents Button1 As System.
    Windows.Forms.Button  
  34. <System.Diagnostics.DebuggerStepThrough()> 
    Private Sub InitializeComponent()  
  35. Me.Button1 = New System.Windows.Forms.Button()  
  36. Me.SuspendLayout()  
  37. '  
  38. 'Button1  
  39. '  
  40. Me.Button1.Location = New System.
    Drawing.Point(88, 56)  
  41. Me.Button1.Name = "Button1" 
  42. Me.Button1.Size = New System.Drawing.Size(168, 48)  
  43. Me.Button1.TabIndex = 0 
  44. Me.Button1.Text = "调用API的信息框" 
  45. '  
  46. 'CallApi  
  47. '  
  48. Me.AutoScaleBaseSize = New System.
    Drawing.Size(5, 13)  
  49. Me.ClientSize = New System.Drawing.Size(384, 205)  
  50. Me.Controls.AddRange(New System.Windows.
    Forms.Control() {Me.Button1})  
  51. Me.Name = "CallApi" 
  52. Me.Text = "CallApi" 
  53. Me.ResumeLayout(False)  
  54. End Sub  
  55. #End Region  
  56. Private Sub Button1_Click(ByVal sender 
    As System.Object, ByVal e As System.
    EventArgs) Handles Button1.Click  
  57. Dim RetVal As Integer ' 存储返回的值.  
  58. RetVal = MBox(0, "调用WinApi成功否?",
     "Windows API 信息框", _  
  59. MB_ICONQUESTION Or MB_YESNO)  
  60. ' Check the return value.  
  61. If RetVal = IDYES Then  
  62. MsgBox("您选择了是")  
  63. Else  
  64. MsgBox("您选择了不是")  
  65. End If  
  66. End Sub  
  67. End Class 

VB.NET调用WinAPI代码示例就为大家介绍到这里。

【编辑推荐】

  1. 两种VB.NET发送邮件方法解读
  2. 如何对VB.NET流进行正确操作
  3. VB.NET创建过程相关步骤详解
  4. VB.NET可执行语句示例代码解读
  5. VB.NET声明语句具体应用方法详解
责任编辑:曹凯 来源: wewill.cn
相关推荐

2009-11-04 11:32:20

VB.NET回调函数

2010-01-19 14:42:43

VB.NET调用过程重

2009-10-30 16:31:55

VB.NET重载方法

2009-10-28 14:34:44

VB.NET Tree

2009-10-28 14:13:32

VB.NET File

2009-10-13 11:22:46

VB.NET调用Web

2009-10-26 16:53:00

VB.NET常用代码

2009-10-22 09:20:46

VB.NET Proc

2009-10-21 09:40:23

VB.NET搜索

2009-10-26 19:22:29

VB.NET使用Log

2009-11-10 16:55:05

VB.NET调用API

2010-01-19 13:36:16

VB.NET可选参数

2009-11-03 12:52:38

VB.NET Wind

2009-10-29 11:26:28

VB.NET调用Web

2010-01-11 17:24:19

VB.NET异步调用

2010-01-15 16:12:40

VB.NET调用DLL

2010-01-18 17:29:35

VB.NET函数调用

2010-01-19 09:48:22

VB.NET调用过程

2010-01-22 16:48:54

VB.NET调用SQL

2009-10-26 18:11:47

VB.NET调用Exc
点赞
收藏

51CTO技术栈公众号