VB调用程序

来源:百度知道 编辑:UC知道 时间:2024/07/01 04:20:50
首先程序一内有两个text,一个button.
简单命令如下.
Private Sub Command1_Click()
If Text1.Text = 123456 And Text2.Text = 654321 Then
MsgBox "ok"
End If
End Sub

现求程序二,能直接打开程序二实现调用程序一,并出现ok的对话框.
即程序二能自动填写程序一的text1和text2内容.

请大家帮帮忙.可能的话,希望能有具体代码.
诚心提问,回答的好可以加分喔.
首先感谢一楼 钡遗辋锝过紶 的热心帮助,可惜你的代码不适合我的问题,也怪我实现没有说清楚.嘿嘿,百度HI里也加你了,我再等等,如果没有更好的回答,分还是给你!

另外补充下,程序一的代码是我假设的,也就是说,我并没有程序一的代码,只有一个程序一的EXE程序.当然,程序一内有两个Text输入框,还有一个command.同时它要求text1内数值为123456,text2内数值654321,运行command以后才会出现OK的对话框.

- -, 我想这样说够清楚了.再次肯定大家帮忙回答!!

-----------------------------------------------------------

怎么没人回答阿,~ 大家帮忙阿!!!

1楼的是用命令参数来达到你说的效果的,但我估计并不是你要的。。
你可以用sendkeys语句试试。。

这个问题需要用API函数来解决
Option Explicit
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function SendMessageByStr& Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As String)
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Const WM_GETTEXTLENGTH = &HE
Const WM_GETTEXT = &HD

Private Type POINTAPI
x As Long
y As Long
End Type

Private Sub Timer1_Timer()
Dim P As POINTAPI
Dim H As Long
GetCursorPos P
H = WindowFromPoint(P.x, P.y)