• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

hàm senkeys trong ứng dụng

Góc trao đổi, hỏi đáp của ngôn ngữ Visual Basic 6 và Visual Basic Script

Moderator: tungblt

User avatar
tdc
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 413
Joined: Sun 10/07/2011 2:38 pm
Location: TP.NAM ĐỊNH
Has thanked: 20 times
Been thanked: 20 times

hàm senkeys trong ứng dụng

Postby tdc » Sat 27/08/2011 9:53 pm

các bạn cho mình hỏi,bây giờ mình muốn gửi hàm senkey đến một chương trình khác đang thực thi,thì code như nào.mình dùng files vbs thì ok rồi nhưng chuyển qua dùng vb thì mò mãi mà chả biết sao? :( vd : mình gọi notepad, mà mình muốn dùng hàm senkeys để gửi các ký tự "abcd" chẳng hạn vào cửa sổ của notepad) vd cụ thể trong files vbs để gửi các ký tự thì mình dùng như này

Code: Select all

Set WshShell=CreateObject("WScript.Shell")
WshShell.Run """C:\WINDOWS\system32\start.cmd"""
wscript.sleep 1500
While WshShell.AppActivate("xt.computer") = FALSE
wscript.sleep 1500
Wend
WshShell.AppActivate "xt.computer"
WshShell.SendKeys "thanhhanguyen"
WshShell.sendkeys "{ENTER}"



User avatar
Zeroplus
Guru
Guru
Posts: 546
Joined: Sat 16/04/2011 11:31 pm
Location: Gò Dầu - Tây Ninh
Has thanked: 6 times
Been thanked: 98 times
Contact:

Re: hàm senkeys trong ứng dụng

Postby Zeroplus » Sat 27/08/2011 10:06 pm

Dùng sendmessage đi bạn. Miễn có handle là gửi text được

User avatar
tdc
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 413
Joined: Sun 10/07/2011 2:38 pm
Location: TP.NAM ĐỊNH
Has thanked: 20 times
Been thanked: 20 times

Re: hàm senkeys trong ứng dụng

Postby tdc » Sun 28/08/2011 11:15 am

cụ thể hóa được không bạn? :D

User avatar
Rowens
Thành viên năng nổ
Thành viên năng nổ
Posts: 88
Joined: Sun 05/07/2009 10:47 pm
Location: Đồng Nai
Has thanked: 5 times
Been thanked: 5 times
Contact:

Re: hàm senkeys trong ứng dụng

Postby Rowens » Sun 28/08/2011 12:08 pm

Trong vblib
  1. Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
  2. Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  3. 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
  4. Private Const WM_SETTEXT = &HC
  5.  
  6. Private Sub Command1_Click()
  7.     Dim h, hEdit As Long
  8.     h = FindWindow("Notepad", "a.txt - Notepad")
  9.     MsgBox h
  10.     hEdit = FindWindowEx(h, 0&, "Edit", vbNullString)
  11.     MsgBox hEdit
  12.     SendMessage hEdit, WM_SETTEXT, 0&, ByVal "www.caulacbovb.com"
  13. End Sub

User avatar
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
Posts: 1259
Joined: Thu 03/06/2010 9:23 pm
Location: Kim Sơn - Đông Triều - Quảng Ninh
Has thanked: 22 times
Been thanked: 138 times
Contact:

Re: hàm senkeys trong ứng dụng

Postby VuVanHoanh » Wed 31/08/2011 10:41 am

Sendkeys khác với Settext. Sendkeys có thể xài cả với app khác notepad.
Gửi key vào ứng dụng khác với settext.

sendkey send key vào ứng dụng đang được active.

  1. Private Sub Command1_Click()
  2.     Shell "notepad.exe"
  3.     SendKeys "hoanh"
  4. End Sub
Since 2008...
One love! :x

User avatar
tdc
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 413
Joined: Sun 10/07/2011 2:38 pm
Location: TP.NAM ĐỊNH
Has thanked: 20 times
Been thanked: 20 times

Re: hàm senkeys trong ứng dụng

Postby tdc » Thu 01/09/2011 3:24 pm

cụ thể mình muốn dùng hàm senkeys để tự động cài phần mềm driver vaccine,mình dùng như sau mà không được?các bạn giúp mình với.

Code: Select all

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Load()
Set WshShell = CreateObject("WScript.Shell")
While WshShell.AppActivate("horizon datasys installation wizard") = False
Wend
Sleep (500)
WshShell.AppActivate "horizon datasys installation wizard"
SendKeys "{enter}"
Sleep (500)
SendKeys "{up}"
Sleep (500)
SendKeys "{enter}"
Sleep (500)
SendKeys "{enter}"
Sleep (500)
SendKeys "123456"
Sleep (500)
SendKeys "{TAB}"
Sleep (500)
SendKeys "123456"
Sleep (500)
SendKeys "{ENTER}"
Sleep (500)
SendKeys "{ENTER}"
End
End Sub

yeupentnp

Re: hàm senkeys trong ứng dụng

Postby yeupentnp » Fri 02/09/2011 2:47 pm

Code của Hoanh dễ hiểu đó bạn....

User avatar
tdc
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 413
Joined: Sun 10/07/2011 2:38 pm
Location: TP.NAM ĐỊNH
Has thanked: 20 times
Been thanked: 20 times

Re: hàm senkeys trong ứng dụng

Postby tdc » Fri 02/09/2011 7:38 pm

mình làm theo code của bạn hoanh nhưng cũng không được? áp dụng vào chương trình của mình thì càng không được,nó chỉ chạy được có mỗi một lệnh sau đó thoát luôn

User avatar
andylam1992
Thành viên danh dự
Thành viên danh dự
Posts: 380
Joined: Mon 06/04/2009 12:57 pm
Location: TP.HCM Q5
Has thanked: 2 times
Been thanked: 4 times
Contact:

Re: hàm senkeys trong ứng dụng

Postby andylam1992 » Sat 03/09/2011 11:17 am

đối với send key thì ứng dụng bạn gọi lên phải ở chế độ active. Nếu như bạn gọi notepad lên mà ko phải ở chế độ active(cửa sổ đang enable) thì cũng ko có gõ chữ dc đâu. Nếu như muốn auto cài driver thì dùng sendmessage đi

不相信未作牺牲竟先可拥有
只相信是靠双手找到我欲求
Cần - Kiệm- Liêm(liêm kiết) - Nghĩa - Chí - Tín


Return to “Visual Basic 6 và Visual Basic Script (VB & VBS)”

Who is online

Users browsing this forum: No registered users and 14 guests