1 (изменено: win, 2022-02-21 11:59:07)

Тема: AHK: Подскажите как передать аргумент ahk скринту?

Здравствуйте,

Уже час в интернете гуглю - толи это не кому не надо - толи не могу запрос сформировать... вроде простая задача.

Run, notepad.exe,,, PID
WinWait, ahk_pid %PID%
WinActivate, ahk_pid %PID%
WinMove, ahk_pid %PID%, , , , 800, 500

Запускает notepad и задает размер окну.
Мне нужно чтобы этим скриптом я мог открыть фаил указанный в аргументе.

Тоесть в командной строке написать.
notepad.ahk C:/file.txt.

И открылся блокнот с указанным файлом - нужного мне размера.

Пробовал и в кавычки брать и добавлять %1 и %filename% и много чего на угад ... почитал про Run - не пойму я как это сделать...
Подскажите пожалуйста.

2

Re: AHK: Подскажите как передать аргумент ahk скринту?

win, добро пожаловать на форум! Ознакомьтесь, пожалуйста, с Правилами, отредактируйте свой пост. Обратите внимание на заглавные буквы в начале и точки в конце предложений.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: Alectric, 2022-02-21 16:39:50)

Re: AHK: Подскажите как передать аргумент ahk скринту?

https://www.autohotkey.com/docs/Scripts.htm#cmd

file=%1%
msgbox,% file
run,notepad.exe %file%
"C:\Program Files (x86)\Autohotkey\AutoHotkeyA32.exe" D:\Desktop\test.ahk D:\Desktop\test.ahk
Win 10 x64
AHK v1.1.33.02
                       Справка тебе в помощь.
+ win

4

Re: AHK: Подскажите как передать аргумент ahk скринту?

Alectric пишет:
file=%1%

Alectric, стоит интересоваться новыми возможностями AHK. Иногда возникает ощущение, что некоторые люди застряли в 2008. Давно уже есть A_Args.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5 (изменено: __Михаил__, 2022-02-21 20:01:04)

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker
А как же правила: Работает — не трожь! Не сломано — не исправляй!

Win10x64, AHK v1.1.37.01 (Unicode 64-bit) | AHK-Wiki | Переменные и выражения | RegEx101
+ win

6

Re: AHK: Подскажите как передать аргумент ahk скринту?

__Михаил__, должно быть, вы живёте в пещере и добываете мамонтов дубинками. Оно ведь как-то работает, зачем менять?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker, ох если бы! Увы все мамонты вымерли ещё когда меня не существовало, поэтому приходиться довольствоваться чем приходиться.

Win10x64, AHK v1.1.37.01 (Unicode 64-bit) | AHK-Wiki | Переменные и выражения | RegEx101

8

Re: AHK: Подскажите как передать аргумент ahk скринту?

Да, с мамонтами не повезло, но в пещере-то хотя бы можно жить.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

9 (изменено: win, 2022-02-22 09:40:49)

Re: AHK: Подскажите как передать аргумент ahk скринту?

Alectric пишет:

https://www.autohotkey.com/docs/Scripts.htm#cmd

file=%1%
msgbox,% file
run,notepad.exe %file%
"C:\Program Files (x86)\Autohotkey\AutoHotkeyA32.exe" D:\Desktop\test.ahk D:\Desktop\test.ahk

Таким способом всё работает но немного не так - без AutoHotkeyA32.exe можно открывать файлы?
Тоесть получается открыть только такой командой "AutoHotkeyA32.exe D:\Desktop\test.ahk D:\Desktop\test.ahk" .

Если просто "D:\Desktop\test.ahk D:\Desktop\test.ahk" то открывается пустой блокнот.

Посмотрел я ссылку про A_Args - ну не понимаю я) не доходит до меня как это всё сделать)))


РАЗОБРАЛСЯ(в exe скомпилял)! Спасибо Alectric !!!

10

Re: AHK: Подскажите как передать аргумент ahk скринту?

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

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

11

Re: AHK: Подскажите как передать аргумент ahk скринту?

win пишет:

в exe скомпилял

Компилировать не нужно было. Запускайте так:

notepad.ahk "C:/file.txt"

Скрипт notepad.ahk такой:

Run, % "notepad.exe """ . A_Args[1] . """",,, PID
WinWait, ahk_pid %PID%
WinMove,,,,, 800, 500
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder
+ win

12

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker спасибо!

13 (изменено: win, 2022-02-27 20:24:01)

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker

У меня както не так работает:

+ открыть спойлер

https://i.imgur.com/zSKoJeD.png

+ открыть спойлер

https://i.imgur.com/lHbyW1V.png

Вот что выдает - причем без разница файлы txt или какие то другие - reg например - ошибка такая же.

А разница вообще в чем - между новым и старым способом - старый может в новых версиях перестать работать?

14

Re: AHK: Подскажите как передать аргумент ahk скринту?

Оформите, пожалуйста, ссылки, как положено. А вообще лучше в таких случаях отображать непосредственно картинки, если они большие, то под спойлером:

+ открыть спойлер

https://i.imgur.com/lHbyW1V.png

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

15

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker

Да изза того что большие - дал ссылки на сайт.. через [ima size=] не получилось выставить размер.

16

Re: AHK: Подскажите как передать аргумент ahk скринту?

win пишет:

У меня както не так работает

А какая версия AHK?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

17

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker

Была старая 1.1.29.01 - поставил 1.1.33.10 (предварительно удалив 1.1.29.01 - чтоб с неё точно не запустилось) - таже ошибка - ищет расширение txt.

Ещё бету попробовал 2.0 - ошибка в коде какая то.

18

Re: AHK: Подскажите как передать аргумент ahk скринту?

Версию 2.0 пока ставить не нужно, там другой синтаксис. Попробуйте указать полный путь к текстовому файлу в параметре.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

19

Re: AHK: Подскажите как передать аргумент ahk скринту?

Alectric

Обнаружил проблему

Если в пути есть пробелы - то фаил не открывает.
Тесть если путь вот такой - то не выходит открыть - что с двойными кавычками что с одинарными:
"TEST TEST\Новый текстовый документ.txt"

не подскажите как решить? или только переименовывать всё?)

20

Re: AHK: Подскажите как передать аргумент ahk скринту?

win, наверно, нам стоит с вами попрощаться? Это последнее предупреждение.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

21

Re: AHK: Подскажите как передать аргумент ahk скринту?

teadrinker

Я видел все ваши предупреждения и старался исправлять - вроде точки и заглавные буквы присутствуют в последнем моем сообщение.
Правила у вас слишком жесткие - я явно такие не потяну... и в дальнейшем скорее всего буду "нарушать" как и до этого не намеренно.

22

Re: AHK: Подскажите как передать аргумент ahk скринту?

win пишет:

Обнаружил проблему

Где тут точка?

win пишет:

не подскажите как решить? или только переименовывать всё?

Где тут заглавная буква?

win пишет:

я явно такие не потяну

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

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder