AutoHotkeyでパスワード生成
AutoHotkeyでパスワード生成
新しいパスワードが必要になった時に、ランダム生成してくれるサイトは結構あるが、いちいち検索なりブックマークから辿るのも面倒だと思ったので、AHKでサクッと生成してクリップボードにコピーできるようにした。
英数字の羅列から擬似乱数に従って文字を取得し、並べるだけ。シンプル設計なので「数字を必ず含める」とかはできないけど、数字、英小文字、英大文字をすべて含むパスワードのみ生成するよう修正。なので、念のため文字数が3未満の時は無限ループしないよう3文字で生成するようにした。
ツールチップで生成文字列を表示するようにしたので、気に入らなければ何度か生成し直せばいい。
;ランダムパスワード生成 #p:: Char = 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz Num = 10 ; パスワードの桁数 Psw = While !(RegExMatch(Psw, "[0-9]") && RegExMatch(Psw, "[a-z]") && RegExMatch(Psw, "[A-Z]")) { Num := (Num < 3) ? 3 : Num Psw = Loop, % Num { Random, Rdm, 1, StrLen(Char) Psw .= SubStr(Char, Rdm, 1) } } Clipboard = %Psw% AutoHideTooltip(Psw, 1500) Return ;---ツールチップ自動消去関数--- AutoHideTooltip(Txt, Time, X="", Y="") { Tooltip, %Txt%, %X%, %Y% SetTimer, AutoHide, -%Time% Return AutoHide: Tooltip, Return }