1

Тема: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

Здесь на форуме, я нашел вот такой скрипт, для обычного однонарного рандома:

F1::

Send, % GenerateRandomString()

GenerateRandomString(length = 5) 
{

characters := "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890" 
StringSplit, chars, characters

Loop, %length%
{
	Random, rand, 1, 36
	password .= chars%rand%
}
return password
}
Send {ENTER} 
return

Мне же нужна возможность сделать двойный рандом(два слова)

2

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

Дважды запустить функцию?

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

3

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

draugrar12345

F1::

Send, % GenerateRandomString()

GenerateRandomString(length = 5) 
{

characters := "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890" 
StringSplit, chars, characters

Loop, 2
{
	Loop, %length%
	{
		Random, rand, 1, 36
		password .= chars%rand%
	}
	password .= " "
}
return password
}
Send {ENTER} 
return

4 (изменено: draugrar12345, 2022-01-23 21:49:00)

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

Vsevolod
Именно это мне и нужно!!! СПАСИБО!!!!

P.S. Все также хорошо, только теперь на конце второго слова также ставится пробел, а как его убрать?

5 (изменено: __Михаил__, 2022-01-23 21:51:43)

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

Vsevolod

Можно было бы поступить проще:

Send, % GenerateRandomString() " " GenerateRandomString()

Ито это крайне кривой код и пример.

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

6

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

__Михаил__
ООООО, вот как раз этот Кривой пример и полноценно сработал))) ТОже СПАСИБО!!!!

7

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

draugrar12345

Правильно так:

SendInput, % RandStr() " " RandStr() "{Enter}"
Return

RandStr(L = 5){
 Static C := StrSplit("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890")
 Loop, % L{
  Random, R, 1, C.Count()
  T .= C[R]
 }
 Return T
}
Win11x64, AHK v1.1.37.01 (Unicode 64-bit), AHK v2.0.17| AHK-Wiki | Переменные и выражения | RegEx101

8

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

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

Win10: LTSC (21H2); AHK: ANSI (v1.1.36.02)

9 (изменено: __Михаил__, 2022-01-24 19:06:08)

Re: AHK: Autohotkey - Как сделать скрипт, вводящий двойной рандом(2 слова)

Phoenixxx_Czar

Думаете что если назвать переменную полным именем она будет работать лучше? В функции на пару строк - не грех.
Если вы за справедливость - найдите все косяки (в коде что в шапке темы) и исправите (с комментариями).

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