снающие люди подсобите наваять BAT - фаил. Нужно, что бы он помещал в буфер обмена строку данных, а потом запускал программу.
[Ответ]
Luke 07:50 24.03.2006
нет ничего проще...
rem ====my.bat=====
CopyStrToClipBoard "Эта строка данных помещается в буфер обмена"
execute myProg.exe
rem ==end my.bat===
[Ответ]
jeck 20:42 24.03.2006
не работает!
убрал execute, прога myProg.exe запустилась,
а в черном окне пишет- "CopyStrToClipBoard" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. cсоответствено в буфере пусто
как быть?
ps если че, XP
[Ответ]
The_God 13:55 25.03.2006
тулзу CopyStrToClipBoard
ты сам должен написать чтоб она параметры свои в буфер обмена записывала
[Ответ]
Yandex 16:01 25.03.2006
Что то в таком духе (у мя 98 - SendKeys - не фуpычит, пpовеpить не могу).
Это не bat - это лучше
---------------- 1.vbs ----------------
set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "notepad", 5
' Тут надо заголовок заменить скоpее всего
objShell.AppActivate "Блокнот"
WScript.Sleep 100
objShell.SendKeys "твой текст"
WScript.Sleep 2500
' Выделяем все
objShell.SendKeys "^a"
WScript.Sleep 2500
' Коиpуем в буффеp
objShell.SendKeys "^c"
WScript.Sleep 2500
' Закpываем блокнот
' Кажется он там сохpанить захочет - откажем
objShell.SendKeys ({ESC})
objShell.SendKeys ({RIGHT})
objShell.SendKeys ({ENTER})
' И наконец стаPт твоего exe
objShell.Run "my.exe", 5
[Ответ]
jeck,
Догадываюсь, для чего это тебе нужно [Ответ]
jeck 23:18 25.03.2006
you_are, ну проблему надо ведь хоть как-то решить
[Ответ]
Yandex 23:40 25.03.2006
Написано же - поместить в фаил с именем например 1.vbs и запускать вместо bat-ника.
(предварительно отредактировав малек - голова я думаю у тя имеется)
по смыслу - делается следуещее (почти построчно)
Запускается блокнот.
Спим (ждем пока запустится)
Активируется
Спим (ждем пока активиуется)
посылаем нажатие клавиш
Спим (пока нажатия обработаются)
посылаем нажатие ctrl-A (~ выделить все)
Спим (понятно почему)
послваем нажатие ctrl-V (~ закопировать в буффер стоку)
дрыхнем
--теперь осталось закрыть блокнот
посылаем нажатие ESC (надеюсь у тя альтенативный блокнот, выход из котоого по ESC сработает - bred 2 или akelpad)
--Однако предложит сохранить фаил - надо отказаться - для этого
посылаем нажатие стрелки вправо и ентер.
последняя строка запускает твою прогу (5 означает, что она будет видна и активна)
Если вопросы еще - попробуй отловить в ваське.
Вообще это Windows Script Нost.
[Ответ]
jeck 00:51 26.03.2006
Yandex, после замены () на "" и установки akelpad все заработало, но есть вопросы
set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "D:\Text\akelpad\akelpad.exe" , 5
objShell.AppActivate "Блокнот" - зачем это надо, и что имелось в виду под "Блокнот"
WScript.Sleep 100
objShell.SendKeys "бла-бла-бла"
WScript.Sleep 250
' Выделяем все
objShell.SendKeys "^a"
WScript.Sleep 250
' Коиpуем в буффеp
objShell.SendKeys "^c"
WScript.Sleep 250
' Закpываем блокнот
' Кажется он там сохpанить захочет - откажем
objShell.SendKeys "{ESC}"
objShell.SendKeys "{RIGHT}"
objShell.SendKeys "{ENTER}"
' И наконец стаPт твоего exe
objShell.Run "прога.exe", 5
Сообщение от Yandex:
(5 означает, что она будет видна и активна)
а есть ключ, что бы akelpad был не виден?
зы аськи нету
[Ответ]
netwind 09:41 26.03.2006
мрак. судя по гуглу в resource kit от 98 и nt4(а так же в win 2003 server) можно найти прогу clip.exe для работы с буфером обмена.
[Ответ]
C доки
0 - Hides the window and activates another window.
1 - Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when displaying the window for the first time.
2 - Activates the window and displays it as a minimized window.
3 - Activates the window and displays it as a maximized window.
4 - Displays a window in its most recent size and position. The active window remains active.
5 - Activates the window and displays it in its current size and position.
6 - Minimizes the specified window and activates the next top-level window in the Z order.
7 - Displays the window as a minimized window. The active window remains active.
8 - Displays the window in its current state. The active window remains active.
9 - Activates and displays the window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when restoring a minimized window.
10 - Sets the show-state based on the state of the program that started the application.
То есть те 0 нужен, а не 5.
Вообще конечно как netwind лучше сделать - а не фигней страдать, как это я сделал )) (вообще таких прог дофига, да и настрочить ее за 10 мин мона [только для тескта]).
[Ответ]