Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 07.12.2005, 12:33
Hobbit Hobbit вне форума
Прохожий
 
Регистрация: 07.12.2005
Сообщения: 3
Репутация: 10
По умолчанию Написать программу на Delphi для тестирования и диагностики FDD

Помогите написать программу на Delphi для тестирования и диагностики FDD!!!!!!!!! Плиз!!!!!!
Ответить с цитированием
  #2  
Старый 07.12.2005, 12:48
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,564
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Hobbit
Помогите написать программу на Delphi для тестирования и диагностики FDD!!!!!!!!! Плиз!!!!!!

Задайвате конкретные вопросы, а не общие, типа "Помогите написать программу", так как за вас никто писать программу не будет, ибо это никому это не надо.

Если есть конкретная проблема - опишите ее (что вы проделали, что не получается и т.п.).

ИНАЧЕ тема будет удалена.
Ответить с цитированием
  #3  
Старый 07.12.2005, 12:57
Hobbit Hobbit вне форума
Прохожий
 
Регистрация: 07.12.2005
Сообщения: 3
Репутация: 10
По умолчанию

Подскажите, PLS , как добраться "напрямую" к Fdd? WinApi....
Например, отметить определенный сектор на дискете как BAD, из под винды.
Очень надо, курсач.
Ответить с цитированием
  #4  
Старый 15.12.2005, 11:55
Hobbit Hobbit вне форума
Прохожий
 
Регистрация: 07.12.2005
Сообщения: 3
Репутация: 10
Печаль

Спасибо за помощь
Ответить с цитированием
  #5  
Старый 20.01.2006, 19:46
RedHat RedHat вне форума
Прохожий
 
Регистрация: 20.01.2006
Сообщения: 2
Репутация: 10
Сообщение Проблем а с ExitWindowsEx

Так как все таки программно выключить комп
функция ExitWindowsEx(EWX_REBOOT,1);
делает только логофф (WINXP Sp2) а не перезагруку компа!!!!
есть ещё один выход но он работает только в 9х семействах

rundll32 shell32,SHExitWindowsEx 1
в NT пишет что ошибка загрузки!!! в модуле

В си для того что бы вырубить комп надо получить привелегии!!! можно ли в дельфи получить их или как все таки программно вырубить комп!!! Помогите плиз
Ответить с цитированием
  #6  
Старый 20.01.2006, 20:07
RedHat RedHat вне форума
Прохожий
 
Регистрация: 20.01.2006
Сообщения: 2
Репутация: 10
По умолчанию Продолжение

для перегрузки используем EWX_REBOOT
для выключения питания EWX_POWEROFF
если нужно экстренно выключит/перегрузить комп, используем вышеуказаные влаги в сочетании с EWX_FORCE

Второй параметр используется только в XP для указания причины перезагрузки.

В NT/2000/XP для использования ExitWindowsEx необходимо иметь
привелегию SE_SHUTDOWN_NAME, по умолчанию не установленную
даже для администратора. Установить её можно нижеприведённым кодом.

HANDLE hToken;
TOKEN_PRIVILEGES* NewState;
OpenProcessToken (GetCurrentProcess (), TOKEN_ADJUST_PRIVILEGES,
&hToken);
NewState = (TOKEN_PRIVILEGES*) malloc (sizeof
(TOKEN_PRIVILEGES) + sizeof (LUID_AND_ATTRIBUTES));
NewState->PrivilegeCount = 1;
LookupPrivilegeValue (NULL, SE_SHUTDOWN_NAME,
&NewState->Privileges[0].Luid);
NewState->Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges (hToken, FALSE, NewState, NULL, NULL, NULL);
free (NewState);
CloseHandle (hToken);


Вот как мне переделать ето на Delphi в С работает на Ура!!!!
Ответить с цитированием
  #7  
Старый 07.11.2008, 10:19
Аватар для mak-karpov
mak-karpov mak-karpov вне форума
Активный
 
Регистрация: 18.09.2008
Сообщения: 235
Версия Delphi: 2010 и 7
Репутация: 1242
По умолчанию

shutdown.exe -r -t 00 - перезагрузка
shutdown.exe -t 00 - выключение
__________________
Кнопка "+" - весы в правом верхнем углу сообщения...
Ответить с цитированием
  #8  
Старый 10.11.2008, 19:51
Rat Rat вне форума
Активный
 
Регистрация: 12.09.2008
Сообщения: 391
Репутация: 6078
По умолчанию

Люди. Это у меня глюки или последнее время так модно писать в топиках, по три разных вопроса?
Ответить с цитированием
  #9  
Старый 10.11.2008, 19:51
Alexo Alexo вне форума
Начинающий
 
Регистрация: 24.01.2007
Сообщения: 191
Репутация: 15
По умолчанию

У тебя глюки, что это модно
__________________
Delphi - это лишь инструмент, а что ты сможешь создать при помощи этого инструмента, зависит исключительно от тебя.
Ответить с цитированием
  #10  
Старый 11.11.2008, 09:54
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

Код:
...
var
...
ph: THandle;
tp, prevst: TTokenPrivileges;
rl: DWORD;
...
begin
OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
TOKEN_QUERY, ph);
LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid);
tp.PrivilegeCount:= 1;
tp.Privileges[0].Attributes:= 2;
AdjustTokenPrivileges(ph, FALSE, tp, SizeOf(prevst), prevst, rl);
ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);
end;
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter