Помогите написать простой скрипт завершения работы программы,при выключении сети

Post a reply


In an effort to prevent automatic submissions, we require that you complete the following challenge.
Smilies
:D :) ;) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :!: :?: :idea: :| :mrgreen: :geek: :ugeek: :arrow: :angel: :clap: :crazy: :eh: :lolno: :problem: :shh: :shifty: :sick: :silent: :think: :thumbup: :thumbdown: :salute: :wave: :wtf: :yawn: :facepalm: :bravo: :dance: :beard: :morebeard: :xmas: :HeHe: :trollface: :cookie: :rainbow: :monkeysee: :monkeysay: :happybday: :headwall: :offtopic: :superhappy: :terms: :beer:
View more smilies

BBCode is ON
[img] is OFF
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Помогите написать простой скрипт завершения работы программы,при выключении сети

Re: Помогите написать простой скрипт завершения работы программы,при выключении сети

Post by vmech » 03 Nov 2023, 17:42

Долбить винду одной и той же командой в цикле, пусть и с коротким сном - глупость.
Есть же системные сообщения от Power Manager'a. Одно из них как раз посылается всем подписанным на него программам в случае переключения питания с розетки на батарею, и обратно.
WM_POWERBROADCAST называется.

Re: Помогите написать простой скрипт завершения работы программы,при выключении сети

Post by mcl » 02 Nov 2023, 17:22

superlefka wrote: Вобщем есть ноут на ХР ,и очень старые программы для гравировки,и если пропадает сеть,нужно чтобы ноут это понимал,и нажималась определенная комбинация,например:
...
*сеть имеется ввиду 220 😁
*220 — имеется в виду питание?
Что до электричества, то у меня не ноут и давно, увы, не XP, но предположу, что системная функция GetSystemPowerStatus даёт нужную нам информацию. Попробуйте этот скрипт: он должен долго и уныло гудеть, а при выключении компьютера из розетки — загудеть встревоженно и звонко (проверить, увы, не могу — мой десктоп загудеть не успеет).

Code: Select all

Loop {
	; Узнаём, питаемся ли мы от розетки
	VarSetCapacity(vPowerStatus, 12, 0)
	DllCall("GetSystemPowerStatus", "Ptr", &vPowerStatus)
	vACLine := NumGet(vPowerStatus, 0, "UChar")
	
	If (vACLine == 0) {
		; Электричество кончилось
		SoundBeep, 600, 300
		SoundBeep, 600, 300
		SoundBeep, 600, 300
		Break
		
	} Else {
		SoundBeep, 300, 500
		Sleep 3000
	}
}
Return
Если скрипт сработает, можете доработать его под ваши нужды, заменив SoundBeep на Send и Sleep (или подождав более доброго самаритянина — я учить вас жать кнопки не стану, этим пол-форума забито).

Помогите написать простой скрипт завершения работы программы,при выключении сети

Post by superlefka » 02 Nov 2023, 14:58

Вобщем есть ноут на ХР ,и очень старые программы для гравировки,и если пропадает сеть,нужно чтобы ноут это понимал,и нажималась определенная комбинация,например:
Пропала сеть
Нажимается клавиша ф9
Через 2 секунды нажимается клавиша ф11
И еще через 2 секунды ф6
И все
Незнаю можно ли здесь о таком просить))
Или уже существует такой кликер какой нибудь,ну хоть какое нибуть решение
*сеть имеется ввиду 220 😁

Top