Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / открыть файл и использовать SendKeys / 25 сообщений из 25, страница 1 из 1
27.02.2016, 10:57
    #39180442
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
здравствуйте, подскажите как программно с Ворда макросом открыть файл "F:\NFC Kits.ndef"?
тем самым откроется программа NFC Kits и затем в этой программе нажать программно три раза подряд стрелку вниз, Tab? тем самым перейдя в нужную строку ввода, очистить её нажимая Delete нужное количество раз и ввести в неё нужные данные? спасибо
...
Рейтинг: 0 / 0
28.02.2016, 08:52
    #39180724
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
я если глубже копнуть?
понять, что посылает программа NFC Kits после того как её открыть
открыть у неё пункт меню Tap and Send/Write Tag: Telephone, в строку Telefone ввести номер телефона
и это же сделать с Ворда, возможно?
...
Рейтинг: 0 / 0
28.02.2016, 08:54
    #39180725
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
кстати с Ворда и с веб странички тоже можно...
...
Рейтинг: 0 / 0
28.02.2016, 18:51
    #39180932
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub NFC_Kits()

'открыть папку и установить курсор на искомом файле
Shell ("explorer.exe /select,""F:\NFC Kits.ndef""")
'тут бы сделать активным это окно, как?
'имитация нажатия на кнопку ENTER для открытия файла
SendKeys "{ENTER}"

End Sub
...
Рейтинг: 0 / 0
28.02.2016, 20:54
    #39180965
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
экзешник нашёл, но не взлетает
Код: vbnet
1.
2.
3.
4.
5.
6.
Sub NFCKits()

Dim NFCKitss As Variant
NFCKitss = Shell(PathName:="C:\Users\Рабочий\AppData\Local\Packages\26830TonyLin.NFCKits_xzh44wb246sn4\AC\Microsoft\CLR_v4.0_32\NativeImages\NFCKits\3f2b90851eb89701ef09f1de93977735\NFCKits.ni.exe", WindowStyle:=vbNormalFocus)

End Sub
...
Рейтинг: 0 / 0
29.02.2016, 08:00
    #39181055
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
подскажите как открывать приложения поставленные с магазина?
2
пока делая код

Код: vbnet
1.
2.
3.
4.
5.
Sub NFCKitssss()

CreateObject("WScript.Shell").Run "F:\NFC Kits.ndef"

End Sub



получаю ошибку 'Method 'Run' of object 'IWshShell3' failed, подскажите пожалуйста, что не так?
...
Рейтинг: 0 / 0
01.03.2016, 10:20
    #39182171
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
делая код
Код: vbnet
1.
2.
Set WshShell = CreateObject("WScript.Shell")
Set WshExec = WshShell.Exec("F:\NFC Kits.ndef") 


говорит - F:\NFC Kits.ndef не является приложением вин32, ну да так и есть вин64, а как код тогда будет для вин64?
...
Рейтинг: 0 / 0
02.03.2016, 00:25
    #39183144
Дмит
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
ShellExecute - API функция, может открыть файл ассоциированной программой.
...
Рейтинг: 0 / 0
02.03.2016, 03:09
    #39183172
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Дмит,
она ставилась с магазина Майкрософта и как её программно запустить ХЗ
...
Рейтинг: 0 / 0
02.03.2016, 08:36
    #39183220
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
здравствуйте нужно несчастных 10 строчек кода, запускаться будет в Ворде
открыть файл F:\NFCKits.ndef, тем самым откроется программа NFC Kits, она ставилась с магазина майкрософта, где её экзешник находится ХЗ, нажать стрелку вниз 3 раза, тем самым курсор станет в нужное место, очистить строку, ввести номер телефона "+79028912680", закрыть файл(программу)
ОС 10 ка 64 бита, 1000 рублей
...
Рейтинг: 0 / 0
02.03.2016, 12:17
    #39183540
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
пол дела сделано, код
Код:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
Option Explicit

Sub NFCKitssss()

'открыть программу NFC Kits путём открытия файла NFCKits.ndef
CreateObject("WScript.Shell").Run "F:\NFCKits.ndef"
'имитация нажатия на кнопку стрелка вниз 3 раза для перехода на строку пункт меню Tap and Send/Write Tag: Telephone
SendKeys "{DOWN 3}"
'имитация нажатия на кнопку DELETE для обнуления поля ввода
SendKeys "{DELETE 50}"
'ввод нужного текста в поле ввода
SendKeys String:="+79028912680"
'закрыть программу NFC Kits путём закрытия файла NFCKits.ndef
'???

End Sub


Private Sub CommandButton1_Click()
Call NFCKitssss
End Sub



программа открывается и стоит на первом пункте меню, не переходит курсор на три строки вниз на нужный пункт меню, вручную нажимая на стрелку вниз это делается... кто знает как уладить?
...
Рейтинг: 0 / 0
02.03.2016, 12:18
    #39183545
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Alt+F4
...
Рейтинг: 0 / 0
02.03.2016, 12:27
    #39183566
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Shocker.Pro, типа сворачивайся? спасибо не надо
...
Рейтинг: 0 / 0
02.03.2016, 12:32
    #39183578
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Большинство программ по Alt+F4 закрываются. Что за программа NFC Kits - я не знаю. Если она сворачивается, значит для выхода у нее есть другой способ, например через меню. Вызывай меню с помощью клавиатурных комбинаций и вызывай нужный пункт.
...
Рейтинг: 0 / 0
02.03.2016, 12:39
    #39183588
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Shocker.Pro,
до 'закрыть программу NFC Kits путём закрытия файла NFCKits.ndef
'???
ещё дойти надо, пока вопрос в том как поставить курсор в нужное меню
Вызывай меню с помощью клавиатурных комбинаций и вызывай нужный пункт - их похоже нет
...
Рейтинг: 0 / 0
03.03.2016, 06:48
    #39184414
T1gRa_NT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
А если после открытие дать этой программе фокус.
Ведь насколько понял она открылась, вот только окно неактивно и соответственно имитации клавиш происходят в Excel как в активном окне.
...
Рейтинг: 0 / 0
03.03.2016, 20:00
    #39185363
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
T1gRa_NT,
как прописать - дать проге фокус?
...
Рейтинг: 0 / 0
06.03.2016, 03:01
    #39186719
Дмит
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
api функция - SetFocus
...
Рейтинг: 0 / 0
06.03.2016, 08:01
    #39186742
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Дмит,
похоже сегодня все мучения закончатся, нашёлся исполнитель.... если да, то на божничку его?
...
Рейтинг: 0 / 0
06.03.2016, 10:24
    #39186775
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
пока работает без проблем

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
Option Explicit

Private Declare Sub keybd_event Lib "user32" _
    (ByVal bVk As Byte, ByVal bScan As Byte, _
    ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
 
Private Sub MySub()

    Dim c As String
    Dim PID As Long
    Dim i As Integer
    Dim scan As Integer
         
    ' Вызов NFC
    PID = Shell("cmd /c F:\NFCKits.ndef", vbNormalFocus)
    'PID = Shell("cmd /c D:\test.txt", vbNormalFocus)
    
    ' Задержка для того, чтобы успело открыться окно, возможно время ожидания придётся увеличить
    Sleep (2000)

    ' Имитация клавиатуры: три раза курсорной клавишей вниз
    For i = 1 To 3
        keybd_event &H28, scan, 0, 0
        keybd_event &H28, scan, &H2, 0
        Sleep (100)
    Next
    
    ' Имитация клавиатуры: табуляция
    keybd_event &H9, scan, 0, 0
    keybd_event &H9, scan, &H2, 0

    ' Имитация клавиатуры (Ctrl+A): выделение старых данных
    keybd_event &H11, scan, 0, 0
    keybd_event &H41, scan, 0, 0
    keybd_event &H41, scan, &H2, 0
    keybd_event &H11, scan, &H2, 0
    
    ' Имитация клавиатуры: запись номера
    'H6B - +
    'H31 - 1
    'H32 - 2
    'H33 - 3
    'H34 - 4
    'H35 - 5
    'H36 - 6
    'H37 - 7
    'H38 - 8
    'H38 - 9
    'H30 - 0
    keybd_event &H6B, scan, 0, 0
    keybd_event &H6B, scan, &H2, 0
    
    keybd_event &H37, scan, 0, 0
    keybd_event &H37, scan, &H2, 0
    
    keybd_event &H39, scan, 0, 0
    keybd_event &H39, scan, &H2, 0
    
    keybd_event &H30, scan, 0, 0
    keybd_event &H30, scan, &H2, 0
    
    keybd_event &H32, scan, 0, 0
    keybd_event &H32, scan, &H2, 0
    
    keybd_event &H38, scan, 0, 0
    keybd_event &H38, scan, &H2, 0
    
    keybd_event &H39, scan, 0, 0
    keybd_event &H39, scan, &H2, 0
    
    keybd_event &H31, scan, 0, 0
    keybd_event &H31, scan, &H2, 0
    
    keybd_event &H32, scan, 0, 0
    keybd_event &H32, scan, &H2, 0
    
    keybd_event &H36, scan, 0, 0
    keybd_event &H36, scan, &H2, 0
    
    keybd_event &H38, scan, 0, 0
    keybd_event &H38, scan, &H2, 0
    
    keybd_event &H30, scan, 0, 0
    keybd_event &H30, scan, &H2, 0

    Application.Activate

End Sub

Private Sub CommandButton1_Click()

Call MySub

End Sub



вопросы, критика?
...
Рейтинг: 0 / 0
06.03.2016, 14:18
    #39186874
Дмит
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
я бы открыл всё таки так:
Код: vbnet
1.
ShellExecute 0, vbNullString, "F:\NFCKits.ndef", vbNullString, "C:\", SW_SHOWNORMAL


не используя cmd.exe
...
Рейтинг: 0 / 0
06.03.2016, 14:29
    #39186877
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Дмит,
спасибо, а Слип тогда нужен?
...
Рейтинг: 0 / 0
06.03.2016, 14:52
    #39186885
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Дмит,
Код: vbnet
1.
ShellExecute 0, vbNullString, "F:\NFCKits.ndef", vbNullString, "C:\", SW_SHOWNORMAL


почему "C:\"?
это SW_SHOWNORMAL=1?
как декларировать? я нашёл декларирование в инете - гладко не прошло...
...
Рейтинг: 0 / 0
06.03.2016, 18:14
    #39186938
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
Дмит,

будь по Вашему, так?

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
Option Explicit

Private Declare Sub keybd_event Lib "user32" _
    (ByVal bVk As Byte, ByVal bScan As Byte, _
    ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Declare Function ShellExecute Lib "shell32" _
    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
    
Private Const SW_SHOWNORMAL = 1
 
Private Sub CommandButton1_Click()

    Dim c As String
    Dim PID As Long
    Dim i As Integer
    Dim scan As Integer
         
    ' Вызов NFC
    'PID = Shell("cmd /c F:\NFCKits.ndef", vbNormalFocus)
    'PID = Shell("cmd /c D:\test.txt", vbNormalFocus)
    
    ShellExecute 0, vbNullString, "F:\NFCKits.ndef", vbNullString, vbNullString, SW_SHOWNORMAL
    
    ' Задержка для того, чтобы успело открыться окно, возможно время ожидания придётся увеличить
    Sleep (2000)

    ' Имитация клавиатуры: три раза курсорной клавишей вниз
    For i = 1 To 3
        keybd_event &H28, scan, 0, 0
        keybd_event &H28, scan, &H2, 0
        Sleep (100)
    Next
    
    ' Имитация клавиатуры: табуляция
    keybd_event &H9, scan, 0, 0
    keybd_event &H9, scan, &H2, 0

    ' Имитация клавиатуры (Ctrl+A): выделение старых данных
    keybd_event &H11, scan, 0, 0
    keybd_event &H41, scan, 0, 0
    keybd_event &H41, scan, &H2, 0
    keybd_event &H11, scan, &H2, 0
    
    ' Имитация клавиатуры: запись номера
    'H6B - +
    'H31 - 1
    'H32 - 2
    'H33 - 3
    'H34 - 4
    'H35 - 5
    'H36 - 6
    'H37 - 7
    'H38 - 8
    'H38 - 9
    'H30 - 0
    keybd_event &H6B, scan, 0, 0
    keybd_event &H6B, scan, &H2, 0
    
    keybd_event &H37, scan, 0, 0
    keybd_event &H37, scan, &H2, 0
    
    keybd_event &H39, scan, 0, 0
    keybd_event &H39, scan, &H2, 0
    
    keybd_event &H30, scan, 0, 0
    keybd_event &H30, scan, &H2, 0
    
    keybd_event &H32, scan, 0, 0
    keybd_event &H32, scan, &H2, 0
    
    keybd_event &H38, scan, 0, 0
    keybd_event &H38, scan, &H2, 0
    
    keybd_event &H39, scan, 0, 0
    keybd_event &H39, scan, &H2, 0
    
    keybd_event &H31, scan, 0, 0
    keybd_event &H31, scan, &H2, 0
    
    keybd_event &H32, scan, 0, 0
    keybd_event &H32, scan, &H2, 0
    
    keybd_event &H36, scan, 0, 0
    keybd_event &H36, scan, &H2, 0
    
    keybd_event &H38, scan, 0, 0
    keybd_event &H38, scan, &H2, 0
    
    keybd_event &H30, scan, 0, 0
    keybd_event &H30, scan, &H2, 0

    Application.Activate

End Sub


оба варианта работают...
...
Рейтинг: 0 / 0
06.03.2016, 22:53
    #39187008
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открыть файл и использовать SendKeys
вот файл F:\NFCKits.ndef красавчик полная противоположность файлу из соседней ветки http://www.sql.ru/forum/1204000/udalit-normal-dot-ruchkami, его можно открыть и удалить, ересь какая-то....
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / открыть файл и использовать SendKeys / 25 сообщений из 25, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]