[ opengl @ 31.08.2005. 21:36 ] @
kako uugasiti komp pomocu koda u vb.net |
[ opengl @ 31.08.2005. 21:36 ] @
[ radoica @ 31.08.2005. 21:49 ] @
Moraces da koristis Win32 funkcije da bi ovo obavio. Potrazi odgovor na http://www.pinvoke.net/ ili na http://msdn.microsoft.com/libr...nanchor/html/anch_win32com.asp
[ aXi @ 02.09.2005. 02:37 ] @
E da mi je neko rekao koliko ljudi pravi shutdown aplikacije pe nego sto sam ja napravio svoju i poceo da obracam paznju na slicne threadove ne bi mu verovao ;).
Evo ti C++ funkcija... napravi Win32 projekat, iz vb.NET projekta samo pozivas preko dllimport static funkcije: Code: bool MySystemShutdown() { HANDLE hToken; TOKEN_PRIVILEGES tkp; // Get a token for this process. if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) return( false ); // Get the LUID for the shutdown privilege. LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; // one privilege to set tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; // Get the shutdown privilege for this process. AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0); if (GetLastError() != ERROR_SUCCESS) return true; // Shut down the system and force all applications to close. if (!ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE, SHTDN_REASON_MAJOR_OTHER | SHTDN_REASON_MINOR_OTHER | SHTDN_REASON_FLAG_PLANNED)) return false; return TRUE; } [ mmix @ 02.09.2005. 17:24 ] @
Kad smo vec na ovoj temi, postoji li programski nacin da se direktno posalje signal maticnoj ploci da uradi trenutni power-off (bez shutdown-a, naravno na plocama koje to dozvoljavaju). Pretpostavljam da se to radi preko ACPI-a, ali ne mogu nigde da nadjem nista konkretno na tu temu.
Ako se pitate zasto zelim uraditi tako nesto ![]() Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|