![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
условное объявление функции [D7, WinXP]
Nazi © (2005-08-26 00:56:00)Приветствую Вас, Мастера.
Есть такая вот проблема.
*****************
program 1;
uses
Windows, System, Classes;
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer;
stdcall; external 'KERNEL32.DLL';
function isWin9x: Bool;
begin
..
end;
begin
if isWin9x then
begin
RegisterServiceProcess(GetCurrentProcessID,1)
....
end;
*****************
как уже наверное понятно, программа проверяет какая система запущена и делает определенные действия исходя их полученного.
Собственно проблема состоит в том, что определение функции
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer;
stdcall; external 'KERNEL32.DLL';
происходит до проверки. Поэтому если запущена NT система повяляется сообщение об ошибке загрузки функции, ибо нет её в kernel32.dll в NT-системах...
Что вы можете посоветовать по этому поводу, как избежать ошибки или как объявить функцию после проверки? Да можно на ассемблере все писать однако проект очень большой и я не пойду на этот шаг.
Zeqfreed (2005-08-26 02:47:00) [1]Nazi (26.08.05 2:38) [9]
Неужели они:
1. Вызывают Диспетчер Задач
2. Переходят на закладку "Процессы"
3. Отыскивают именно этот планировщик (!)
4. И безжалостно убивают его двумя кликами ?
Однако ж, способные у вас бухгалтера!
Nazi (2005-08-26 02:38:00) [2]Думаю вопрос исчерпан.
Преимущество простое, просто чтобы никто не смог завершить программу ибо пользоваться сторонними утилитами бухгалтерия не умеет а вот лазать и всякую хрень творить горазды.
Zeqfreed (2005-08-26 02:35:00) [3]Nazi (26.08.05 2:23) [7]
Повторюсь, можно узнать ожидаемые тобой преимущества, которые программа получит после вызова RegisterServiceProcess?
Nazi (2005-08-26 02:23:00) [4]да органайзер с поддержкой шифрования паролей на работу надо. Компов половина на 98 винде идут. могу и две проги написать да вот только сказали чтобы одна и универсальная ато "нам нет времени разбираться еще и с твоей программой.. у самих работы много".
вот NativeAPI и Ring0 используется повсеместно в межсеевых экранах, однако когда спрашиваешь что да как такой же результат.. мол мы вирусы не помогаем писать.. =(
Zeqfreed (2005-08-26 02:17:00) [5]Джо © (26.08.05 1:47) [4]
Ясно. В общем-то, согласен со вторым пунктом.
Nazi (26.08.05 2:02) [5]
А можно узнать ожидаемые преимущества, которые прорамма получит после вызова RegisterServiceProcess?
Nazi (2005-08-26 02:02:00) [6]RegisterServiceProcess
в моем случае используется в нормальных целях, для повышения привилегий так сказать своему планировщику.
Это так к слову. ответа теперь и не жду, однако дабы развеять ваши домыслы
Джо (2005-08-26 01:47:00) [7]1. Да нет, просто пол-столетия назад "баловники" с такими никами уже изрядно "набаловались". Лично я принципиальный противник нравственных поучений, но, боюсь, что в данном случае я прописал бы автору хорошую порку, надеясь, что в столь юном возрасте она возымеет все-же свое действие.
2. Желание импортировать именно указанную функцию + выказываемое автором знание предмета неопровиржимо (для меня) указывает именно на пакостеписателя.
Zeqfreed (2005-08-26 01:30:00) [8]Джо © (26.08.05 1:03) [1]
А что не так с ником? Чистое любопытство :)
Просто я вижу два варианта: он не зарегистрирован да и вопрос наталкивает на мысль об очередном "вирусописателе" или же этот ник всемирно известен и принадлежит какому-нить "баловнику"?
Nazi (2005-08-26 01:09:00) [9]я надеялся получить совет, а не рассуждения о никах. Давайте воздержимся от флейма
Джо (2005-08-26 01:03:00) [10]Надеюсь, что не только я один воздержусь от ответа на сей вопрос, увидев никавтора вопроса.