Это довольно сложно объяснить без предварительного показа кода, так что вот так:
Это код:
#l::
{
SoundGet, mutestate, , MUTE
if mutestate = Off
Send {Volume_Mute}
Sleep 200
DllCall("LockWorkStation")
Sleep 200
SendMessage,0x112,0xF170,2,,Program Manager
Return
}
И это вывод журнала:
002: {
003: SoundGet,mutestate,,MUTE
004: if mutestate = Off
005: Sleep,200 (0.20)
006: DllCall("LockWorkStation")
007: Sleep,200 (0.20)
008: SendMessage,0x112,0xF170,2,,Program Manager
009: Return (16.63)
Теперь к актуальной "проблеме".
Существует одна часть реального кода, который не отображается в журнале (но все еще выполняется), а именно Send {Volume_Mute}
. Я проверял, что он все еще работает, установив громкость на максимум, а затем вызвав горячую клавишу. Он блокирует компьютер, а затем отключает его, что и должно быть.
Мне просто интересно, почему он вообще не отображается в журнале. Мое единственное предположение было бы, что фигурные скобки, вероятно, вызывают "проблему".
#l::
{ << This brace
SoundGet, mutestate, , MUTE
if mutestate = Off
Send {Volume_Mute} << The 2 braces here
Sleep 200
DllCall("LockWorkStation")
Sleep 200
SendMessage,0x112,0xF170,2,,Program Manager
Return
} << And this brace
Я не совсем уверен, является ли это причиной проблемы, но мне бы очень хотелось узнать, в чем именно причина.