Написание перезагрузчика системы
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Написание перезагрузчика системы - 2007-05-06 13:25:27.460000
|
|
|
OvErDoS
Сообщений: 7
Оценки: 0
Присоединился: 2007-05-03 17:30:27.706666
|
Кто знает как написать в VB прогу, которая при её запуске перезагружала систему?
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 14:20:01.470000
|
|
|
RamMerLabs
Сообщений: 615
Оценки: 0
Присоединился: 2007-04-06 23:05:13.516666
|
молча! :D :D :D :D :D :D гугль, как и прежде, работает…
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 14:26:16.880000
|
|
|
voody
Сообщений: 958
Оценки: 0
Присоединился: 2005-02-06 22:28:30
|
У меня есть код на VBScript (не мной написанный). Когда-то нашел в какой-то статье. Он выключает WinXP. При желании, переделать код под VB не составит труда: dim OpSysSet, obj Set OpSysSet = GetObject("winmgmts:{impersonationLevel=impersonate," & _ "(Shutdown)}//./root/cimv2").ExecQuery _ ("SELECT * FROM Win32_OperatingSystem" &_ " WHERE Primary=true") For Each obj In OpSysSet obj.Win32Shutdown(8) Next С семейством Win9x все еще проще. Там систему можно перезагрузить одной WinAPI функцией: ExitWindowsEx(EWX_REBOOT, NULL); // C++ quote:
ORIGINAL: RamMerLabs молча! :D :D :D :D :D :D гугль, как и прежде, работает… И это тоже правда. Я все это нашел как раз в поисковиках!
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 14:47:16.836666
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Такую пургу писать - VB не нужен. (из пушки по воробьям) Пиши BAT- файл, в нём запускай Shutdown.exe и в Автозагрузку. Задача решена. Я и задачи-то здесь не вижу….
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 15:14:29.200000
|
|
|
GROB_T
Сообщений: 349
Оценки: 0
Присоединился: 2007-01-05 02:54:27.330000
|
в bat-нике напиши shutdown -r -f -t 0 и будет перезагрузка
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 15:20:36.750000
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Не забудь - "Shutdown", а то еще напишет - просто "даун"…
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 16:29:38.023333
|
|
|
OvErDoS
Сообщений: 7
Оценки: 0
Присоединился: 2007-05-03 17:30:27.706666
|
Я написал эту прогу в Paskal'е, а в Бейсике не смог, просто хочется сравниить где проще, кстати, а как сделать так, что бы после её первого запуска, она автомотически помещалась в автозагрузку?
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 16:39:10.310000
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Не похоже, что это сможешь… Ты что, не можешь догадаться, что файл должен скопировать себя из текущей папки в автозагрузку? Или прописать себя в реестре на загрузку? Или ссассоциировать себя с текстовым файлом, к примеру… Не похоже, что языки тебе знакомы… Всё это пишется 5-7 минут…
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 16:56:16.810000
|
|
|
OvErDoS
Сообщений: 7
Оценки: 0
Присоединился: 2007-05-03 17:30:27.706666
|
Я углублённо языки начал изучать совсем недавно и не освоился ещё. Всё-же, как это сделать?
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 16:59:37.813333
|
|
|
RamMerLabs
Сообщений: 615
Оценки: 0
Присоединился: 2007-04-06 23:05:13.516666
|
quote:
Я углублённо языки начал изучать а до этого как изучал?
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 17:04:08.253333
|
|
|
OvErDoS
Сообщений: 7
Оценки: 0
Присоединился: 2007-05-03 17:30:27.706666
|
quote:
а до этого как изучал? А до этого основы.
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 17:08:32.523333
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Ну что я тут должен код написать, что-ли?
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 18:02:08.690000
|
|
|
OvErDoS
Сообщений: 7
Оценки: 0
Присоединился: 2007-05-03 17:30:27.706666
|
[b]Ну что я тут должен код написать, что-ли?[/b]
Ну вообщето я этого и прошу.
|
|
|
RE: Написание перезагрузчика системы - 2007-05-06 18:13:33.230000
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Открой Win32.hlp и ты найдёшь свою перезагрузку. Я могу файл на почту скинуть готовый, но мне пиво дадут? HANDLE hToken;
TOKEN_PRIVILEGES tkp;
// Get a token for this process.
if (!OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken))
error("OpenProcessToken");
// 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);
// Cannot test the return value of AdjustTokenPrivileges.
if (GetLastError() != ERROR_SUCCESS)
error("AdjustTokenPrivileges");
// Shut down the system and force all applications to close.
if (!ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE, 0))
error("ExitWindowsEx");
|
|
|
RE: Написание перезагрузчика системы - 2007-05-07 12:16:16.486666
|
|
|
JTG
Сообщений: 1189
Оценки: 0
Присоединился: 2007-03-05 11:56:01.993333
|
Вот, с WASM.RU. Оптимизация, мать его за ногу :D
; Coder : Ivan2k2
; Location : Russia,Angarsk
;
; Thanx 2 :
; - Tomasz Grysztar for FASM
; - chris for 159 bytes
; - Ancient One for 104 bytes
;
; Greetings 2 :
; - sOUR
; - Alex-
; - LisP
;
; Tested in WiND0ZE XP SP2
imageBase = 0x10000
ShutdownPowerOff = 0x2
SeShutdownPrivilege = 0x13
SE_PRIVILEGE_ENABLED = 0x2
TOKEN_ADJUST_PRIVILEGES = 0x20
NtAdjustPrivilegesToken = 011
NtOpenProcessToken = 123
NtShutdownSystem = 249
use32
dosHeader:
dw 'MZ'
dw 0
ntHeader:
dd 'PE'
dw 0x14c
dw 0
entryPoint :
_12_bytes :
lea edi,[edx-9] ; 3 here is magic
mov ebx,esp ; 2
push ebx ; 1
push TOKEN_ADJUST_PRIVILEGES ; 2
push (-1) ; 2
jmp _14_bytes ; 2
dw sizeof.optionalHeader
dw 0x102
optionalHeader:
dw 0x10b
_14_bytes :
push ebx ; 1
mov al,NtOpenProcessToken ; 2
call edi ; 2
push ShutdownPowerOff ; 2
push eax ; 1
push SeShutdownPrivilege ; 2
push 1 ; 2
jmp _08_bytes_a ; 2
dd entryPoint
_08_bytes_a :
mov ebp,esp ; 2
push eax ; 1
push eax ; 1
push eax ; 1
push ebp ; 1
jmp _08_bytes_b ; 2
dd imageBase
dd 4
dd 4
_08_bytes_b :
push eax ; 1
push dword[ebx] ; 2
push ebp ; 1
mov al,NtAdjustPrivilegesToken ; 2
jmp _04_bytes ; 2
dw 3
_06_bytes : ; 5 bytes of code and 1 empty byte
leave ; 1
mov al,NtShutdownSystem ; 2
call edi ; 2
db 0 ; 1 empty byte
dd sizeof.image
dd sizeof.peHeaders
_04_bytes :
call edi ; 2
jmp _06_bytes ; 2
db 2 ;changed from dw to db
;Thanx 2 Ancient One for this optimization =)))))))
sizeof.optionalHeader = $-optionalHeader
sizeof.peHeaders = sizeof.optionalHeader
sizeof.image = $
|
|
|
RE: Написание перезагрузчика системы - 2007-05-07 14:11:16.026666
|
|
|
Puparro
Сообщений: 1669
Оценки: 0
Присоединился: 2007-05-04 09:57:18.383333
|
Я написал этот файл за пару минут. Лежит у меня на столе. Кому он нужен, кроме корзины? Бесплатно тоже не нужен?
|
|
|
|
|