Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];

Вниз

Как заставить прогу работать до ввода логина и пароля? Win2000ser   Найти похожие ветки 

 
Wizd   (2003-04-01 10:26) [0]

Делаю систему охраны на основе существующего сервака под Win200ser. Необходимо, чтобы программа работала независимо от того, есть или нет залогиненые юзера на машине. Подскажите, в каком направлении двигаться?!!!


 
$hade   (2003-04-01 10:31) [1]

NT сервисы (службы)...


 
Wizd   (2003-04-01 11:23) [2]

Это понятно, но как создать с помощью delphi свой сервис?


 
Anatoly Podgoretsky   (2003-04-01 11:26) [3]

File|New|Service Application


 
Wizd   (2003-04-01 11:39) [4]

Благодарю! Если кто нибудь еще что-либо добавит, буду очень признателен.


 
Phantomouse   (2003-04-01 18:45) [5]

Есть в виндах файлик, где записано какой десктоп запускать. На этом принципе работают шеллозаменители. Если там прописать вместо десктопа виндоуса твою прогу, то она будет запускаться до рабочего стола, то-есть как форма ввода пароля. А уже оттуда ты можешь запустить и шелл. Надеюсь можешь :). В смысле если знаешь как из своей программы запустить другую :).


 
SemFLY   (2003-04-01 23:48) [6]

А какой это файлик ? Подскажи... :))
-
Спасибо :))


 
Wizd   (2003-04-02 11:26) [7]

Идея интересная, но шаманством заниматься не хочется. Попытаю счастья в создании сервса NT.


 
Phantomouse   (2003-04-02 16:39) [8]


> А какой это файлик ? Подскажи... :))

И чего-то я забыл... Как вариант могу предложить следующее:<br>
В директории виндоуса есть файл explorer.exe. Это есть тот самый шелл. Переименовываем его. Теперь пишем прогу проверки пароля, называя ее *.ехе файл explorer.exe. Теперь переписываем его в директорию с виндами и все пучком. Прога загружается вместо рабочего стола. Главное не забудь научить ее грузить рабочий стол :).
Ну а уж научить ее копировать себя в папку виндов проще пареной репы :)


 
Angel[Saint]   (2003-04-03 09:37) [9]


> И чего-то я забыл... Как вариант могу предложить следующее:<br>
> В директории виндоуса есть файл explorer.exe. Это есть тот
> самый шелл. Переименовываем его. Теперь пишем прогу проверки
> пароля, называя ее *.ехе файл explorer.exe. Теперь переписываем
> его в директорию с виндами и все пучком. Прога загружается
> вместо рабочего стола. Главное не забудь научить ее грузить
> рабочий стол :).
> Ну а уж научить ее копировать себя в папку виндов проще
> пареной репы :)

Не получиться такое. 2000 Винда и выше следит чтобы ее системные файлы не меняли. Я пробовал сделать ето (поковырялся ресторатором в explorer.exe и заменил его на свой) винда проделала обратную операцию(стерла мой и заменила на свой). Вот еси подменить ентот файлик из другой системы, тада навена все будет намана


 
Wizd   (2003-04-03 10:07) [10]

Занялся сервисом NT. Это более прямой путь.

Однако, один знакомый подкинул идею, что загрузиь программу можно просто прописав ее в win.ini :)


 
push   (2003-04-03 10:49) [11]

> И чего-то я забыл... Как вариант могу предложить следующее:<br>
> В директории виндоуса есть файл explorer.exe. Это есть тот
> самый шелл. Переименовываем его. Теперь пишем прогу проверки
> пароля, называя ее *.ехе файл explorer.exe. Теперь переписываем
> его в директорию с виндами и все пучком. Прога загружается
> вместо рабочего стола. Главное не забудь научить ее грузить
> рабочий стол :).
> Ну а уж научить ее копировать себя в папку виндов проще
> пареной репы :)

в реестре можно указать какую оболочку грузить, explorer.exe, или свою, просто указываете путь, перегружаетесь...


 
VideoLord   (2003-04-03 22:25) [12]

Да, у нас возникла такая же проблема в Windows XP.

При замене explorer.exe свой программой, винда его сразу же меняет обратно.

Весь реестр облазили, а где поменять шелл не нашли.

win.ini в WindowsXP не обрабатывается (по крайней мере параметр shell= )

Сервис конечно можно написать, но после запуска моего сервиса загрузится explorer, а вот этого делать не желательно... На компе должна крутиться только наша программа (сетевой сервер)

Есть какие-нибудь предложения, как решить задачу?


 
sniknik   (2003-04-04 08:31) [13]

описание изменейий системных картинок там в частности есть такой пункт

Вы должны понимать, что, выключая Защиту файлов Windows, вы понижаете защиту от вирусов и от случайной порчи системных файлов. Если вы не хотите ее выключать, то вам следует здесь остановиться.

Шаг 10. Запустите Regedit.exe и перейдите на ветвь [HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft \Windows NT \CurrentVersion \Winlogon]. Вы должны увидеть DWORD значение "SFCDisable" выставленное в "0". Измените его на "ffffff9d".

После установки SP3 на 2000-е винды, это у меня работать перестало. На XP возможно изначально не работает. Но попытайтесь.
сама ститья откуда цитаты здесь
http://www.littlewhitedog.com/reviews_other_00021.asp


 
Севостьянов Игорь   (2003-04-04 11:06) [14]

В дополнение ко всему сказаному - есть DLL в WinNT/2000/XP -Gina.dll (По умолчанию это msgina.dll)- она отвечает за WinLogon - идея понятна ? вот ее можно подменять - в реестре [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] есть ключ (если нет надо создать)
"GinaDLL"="C:\\WINNT\\System32\\awgina.dll"
Это и будет подменяемая DLL об остальном читай в MSDN. Кратко:
------------------------------------------------
Winlogon and GINA
Purpose
Winlogon is a component of the Microsoft® Windows NT®/Windows® 2000 operating system that provides interactive logon support. Winlogon is designed around an interactive logon model that consists of three components: the Winlogon executable, a Graphical Identification and Authentication dynamic-link library (DLL)—referred to as the GINA—and any number of network providers.

--------------------------
| Winlogon.exe |
--------------------------
| | |
| | |
gina.dll network network
provider provider
DLL DLL

The Winlogon executable handles interface functions that are independent of authentication policy.

The GINA is a replaceable DLL component that is loaded by the Winlogon executable. The GINA implements the authentication policy of the interactive logon model, and is expected to perform all identification and authentication user interactions. For example, replacement GINA DLLs can implement smart-card, retinal-scan, or other authentication mechanisms in place of the standard Windows NT/Windows 2000 user name and password authentication.

Winlogon can also load zero or more network providers that must perform secondary authentication.

------------------------------------------------
О сервисах NT - Если очень быстро войти в систему - сервис может не успеть загрузиться...


 
Моисей   (2003-04-04 13:37) [15]

Серьезное решение -- сервис,
все остальное игры (хотя и очччень увлекательные).
чтобы сервис загрузился ПЕРЕД winlogon, можно
настроить dependency так, чтобы winlogon зависел от твоего
сервиса.


 
Alexandr Emelin   (2003-04-04 15:48) [16]

Сервис - это решение, когда нужно чтобы он работал независимо от того входит или нет пользователь в систему, а Shell - замена оболочки пользователя, который входит в систему.



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.06.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.009 c
3-26409
Dimaz-z
2003-05-21 22:25
2003.06.09
Ещё одна проблема с упаковкой таблицы!!! Помогите пожалуйста!


7-26806
Новик
2003-04-03 09:38
2003.06.09
Передача файлов через Async32


3-26366
Apachi
2003-05-21 07:39
2003.06.09
Дерево


3-26387
bobr12
2003-05-21 13:37
2003.06.09
Как в DBGrid.Options в программе установить dgMultiSelect в True?


14-26787
Карлсон
2003-05-23 20:33
2003.06.09
что с монитором?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский