วิธีรับค่า Paramiter จากภายนอก เข้ามาใช้ใน *.exe
สมมติ
เราสร้างโปรแกรมบางอย่างเพื่อที่จะทำการ Process แล้ว
เราต้องการเรียกใช้มันจากอีกโปรแกรมหนึ่ง โดยต้องส่งค่าจากโปรแกรมนั้นเข้ามายัง โปรแกรมแรก
จะต้องทำดังนี้
- ที่ Form1_Load ของโปรแกรมแรก จะมีคำสั่ง Command() เพื่อที่จะเก็บค่า Paramiter ที่ถูกส่งเข้ามาเป็นแบบ String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim outParam As String
outParam = Command()
' MsgBox("outParam = " & outParam)
End Sub
- ถ้ามีการส่งหลายๆค่าเข้ามาเป็น String เช่น AAA BBB CCC จะต้อง ทำการตัดคำด้วย Split
Dim outParam As String = Command()
Dim arr_CommandLine() As string
arr_CommandLine = Split(outParam , " ")
-สุดท้าย ที่อีกโปรแกรมหนึ่งที่จะเรียกใช้โปรแกรมนี้ จะเรียกแบบนี้
ส่วนบนสุดประกาศ
Public Declare Function ShellExecute Lib _
"shell32.dll" Alias "ShellExecuteA" _
(ByVal hWnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
ส่วนที่เรียกใช้
Dim s_infile as string 'ค่าที่จะส่งเข้าไป เช่น AAA BBB CCC
ShellExecute 0, "open", App.path & "\Test.exe", s_infile, "", vbNormalFocus
อ้างอิง : http://www.thaidev.com/board1/view.php?id=245&bn=board_vb
ไม่มีความคิดเห็น:
แสดงความคิดเห็น