Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Запуск проги из буфере обмена

Ответить
Настройки темы
VBS/WSH/JS - [решено] Запуск проги из буфере обмена

Пользователь


Сообщения: 67
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет. Есть скрипт, копирую полный путь к программе, или папке, блокноту, и т.д, и они запускаются при запуске скрипта. Оно хоть и срабатывает, но всплывает ошибка. Иногда бывает без ошибки, но это редко. Бывает и совсем не работает. Помогите подправить. Заранее спасибо.
Set obj = CreateObject("InternetExplorer.Application")
obj.Navigate("about:blank")
clip = obj.document.parentWindow.clipboardData.getData("text")
obj.Quit
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run(clip, 1, True)

Отправлено: 23:04, 07-06-2023

 

Аватара для NickM

Ветеран


Contributor


Сообщения: 4233
Благодарности: 991

Профиль | Отправить PM | Цитировать


Вы уверены, что в clip всегда окажется путь до программы?

Не исключено, что закрывать указанный объект Вам следует на последнем этапе, уже после запуска программы.

На этапе отладки отслеживайте/ мониторьте/ проверяйте/ наблюдайте значение clip и возможно Вы увидите, что в переменной не всегда то, что ожидается.

Отправлено: 06:04, 08-06-2023 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


обычно берётся через объект htmlfile
Код: Выделить весь код
clip = CreateObject("htmlfile").parentWindow.clipboardData.getData("Text")
MsgBox(clip)
Это сообщение посчитали полезным следующие участники:

Отправлено: 08:59, 08-06-2023 | #3


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Powershell

script.ps1
Код: Выделить весь код
if (Test-Path (Get-Clipboard)) {start $path}
Ярлык для запуска
Код: Выделить весь код
powershell -f "D:\temp\script.ps1"

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:43, 08-06-2023 | #4


Аватара для NickM

Ветеран


Contributor


Сообщения: 4233
Благодарности: 991

Профиль | Отправить PM | Цитировать


Цитата DJ Mogarych:
Powershell »
, раздел ведь VBS/WSH/JS

Отправлено: 10:30, 08-06-2023 | #5


Пользователь


Сообщения: 67
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата NickM:
Вы уверены, что в clip всегда окажется путь до программы? »
А как же, конечно уверен.

Цитата Sham:
clip = CreateObject("htmlfile").parentWindow.clipboardData.getData("Text")
MsgBox(clip) »
Это же просто появляется окошко с копированным путём. Если это надо куда то в мой вставить-заменить, то всяко пробовал, ошибки выдаёт. Подскажите куда ставить?

Отправлено: 12:44, 08-06-2023 | #6


Аватара для NickM

Ветеран


Contributor


Сообщения: 4233
Благодарности: 991

Профиль | Отправить PM | Цитировать


Цитата denis19:
Это же просто появляется окошко с копированным путём. »
Ну так ведь это пример для Вас!

Цитата denis19:
Если это надо куда то в мой вставить-заменить, то всяко пробовал, ошибки выдаёт. »
Так покажите, что и куда Вы вставляли?

Цитата denis19:
Подскажите куда ставить? »
Ну, например, так:
Код: Выделить весь код
set fso = CreateObject("Scripting.FileSystemObject")
clip = CreateObject("htmlfile").parentWindow.clipboardData.getData("Text")
if (fso.FileExists(clip)) Then
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run(clip, 1, True)
end if
Цитата denis19:
А как же, конечно уверен. »
Тогда этого быть не должно:
Цитата denis19:
но всплывает ошибка. Иногда бывает без ошибки, но это редко. »

Последний раз редактировалось NickM, 08-06-2023 в 15:18.


Отправлено: 13:10, 08-06-2023 | #7


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Цитата NickM:
раздел ведь VBS/WSH/JS »
Только потому, что у автора был такой исходный скрипт. Но если это принципиально, извините.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 14:13, 08-06-2023 | #8


Пользователь


Сообщения: 67
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата NickM:
Ну, например, так: »
Ошибка всё равно всплывает. Надо убирать цифру в конце. Вот так запускает.
clip = CreateObject("htmlfile").parentWindow.clipboardData.getData("Text")
MsgBox(clip)
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run(clip, True)

Отправлено: 15:24, 08-06-2023 | #9


Аватара для NickM

Ветеран


Contributor


Сообщения: 4233
Благодарности: 991

Профиль | Отправить PM | Цитировать


Цитата denis19:
Надо убирать цифру в конце. Вот так запускает. »
Так Вы какое приложение пытаетесь запустить?

Цитата:
3.4. Run
Синтаксис:

Run(<Command>,<WindowStyle>,<WaitOnReturn>)
Назначение: создаёт новый независимый процесс, который запускает заданное приложение.

Параметры:

<Command> - строка, командная строка запуска приложения.
<WindowStyle> - необязательный, число. Определяет вид окна запускаемого приложения. Некоторые возможные значения:
0 - Не отображает окно.
1 - Активизирует и отображает окно.
2 - Активизирует окно и отображает его в свёрнутом виде.
3 - Активизирует окно и отображает его в максимизированном виде.
<WaitOnReturn> - необязательный, булево (число). True - сценарий возобновит работу только после завершения вызванного процесса. False (по умолчанию) - управление передаётся сразу обратно в сценарий.
Описание: если параметр "WaitOnReturn" установлен в True, метод возвращает код выхода вызванного приложения. Иначе метод всегда возвращает ноль.
При передаче параметров в процедуру/ функцию следует соблюдать их порядок и количество.

Т.е. Вы ошибочно предполагаете, что опустили второй параметр.

Отправлено: 15:27, 08-06-2023 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Запуск проги из буфере обмена

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2016 - [решено] Невозможно освободить место в буфере обмена. Excel 2016 Lyrak Microsoft Office (Word, Excel, Outlook и т.д.) 4 02-08-2019 08:49
Любой язык - воспроизвести ссылку на медиафайл в буфере обмена neebet01 Скриптовые языки администрирования Windows 1 12-01-2017 10:04
Разное - [решено] Можно ли посмотреть что находится в буфере обмена? 4o_kavo Microsoft Windows 10 6 11-02-2016 01:58
2007 - [решено] (Access 2007) данные в буфере обмена повреждены support23 Microsoft Office (Word, Excel, Outlook и т.д.) 1 21-08-2013 15:36
Запуск из проги другой проги Vampire Программирование и базы данных 2 26-11-2003 12:40




 
Переход