Spuštění skriptu při vypnutí počítače
Dobrý den,
potřeboval bych radu jak zobrazit při vypínání PC hlášku a vypnutí dokončit až po jejim odklepnutí.
V doménové politice v Nastavení systému windows jsem zkoušel jak v nastavení PC, tak v části pro uživatele spustit vbs i cmd skript typu:
MsgBox "Nezapomeňte na ...!"
Obojí bez výsledku.
Je nějaká cesta, jak docílit požadovaného stavu?
Start / Spustit / GPEdit.MSC
Konfigurace pocitace / Nastaveni systemu Windows / Skripty (spousteci nebo ukoncovaci)
čili pak by to měl být odhlašovací skript uživatelů v "konfiguraci uživatele/user configuration":
C:\WINDOWS\System32\GroupPolicy\User\Scripts\Logof f
cesta přes computer configuration - windows settings - scripts - shutdown, čili adresář: "C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\S hutdown" se provede ve chvíli kdy už je uživatel odhlášen a gui prostředí končí - případná hláška by se neměla kam zobrazit.
Testoval jsem obě tyto cesta, bohužel se výzva k uživateli vůbec neprojeví.
Postup kde toho docílit vím, problém je v tom, co píše Vladimír.
Ať už dám cmd dávku nebo vbs dle příkladu, tak to proletí a počítač se vypne a uživatel není vyzván k reakci na tuto hlášku. Je přitom jedno, jestli PC uživatel vypíná přes menu Start nebo třeba skriptem shutdown /s /f -t 1. Potřebuji ho pouze upozornit na to, že má něco udělat než odejde domů.
máš pravdu, registroval jsem jen okno cmd.exe s výpisem při vložení do logoff, nic jsem po něm nechtěl a neřešil jestli může zastavit odhlášení.
jde zkusit dát na plochu zástupce batky, s ikonou vypínacího červeného knoflíku. batka vyrobí připomínací hlášku, dá pauzu nebo sleep, další řádek bude shutdown.
ten by byl třeba s oprávněním uživatele "backup operator", se zapamatovaným heslem.
zároveň běžným uživatelům/skupině odebereš právo vypínat počítač:
gpedit.msc - computer conf. - windows settings - security settings - local policies - user rights assigment - vpravo: shutdown system: backup operators group (sebe do ní přidáš)
Jo, tak by to šlo. Představuje to ale obejít všechny PC nebo spáchat dávku, kterou jim toho zástupce na plochu podstrčím. To omezení v GP by ale zase narazilo na problém u managerů, kteří jsou neradi omezování.
Vidím to tak, že jednodušší bude cesta občas po konci směny obejít pár kanceláří, zjistit stav a po několika bububu bez příslušné odezvy udělat zápis o porušení bezpečnosti. Zápis do osobní karty není moc příjemný a oni si to nakonec mezi sebou řeknou, že je zle. Stejně by tu hlášku časem jen odklepávali ...
Musí to být speciální program. V práci máme in-house aplikaci v Delphách, která když běží, tak posílá systému nějaké message které zabraňují uživateli se odhlásit, dokud to neodstřelí. Nevím, jestli je to záměr nebo bug, ale funguje to. (Ta aplikace k tomu neslouží )
Staci negativne odpovedet na zpravu WM_QUERYENDSESSION a Windows maji smulu.
V Delphi to udelas jednoduse - v OnCloseQuery formulare nastavis CanClose := False
Je to jedna z nejcastejsich chyb, kdy programator chce zabranit ukonceni aplikace krizkem, dokud probihaji napr. nejake vypocty a neuvedomi si, ze zabrani nejen vypnuti sve aplikace, pokud neosetri tu zpravu...