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

Вниз

Пару вопросов   Найти похожие ветки 

 
Beglec   (2002-10-10 01:52) [0]

1. Как в Windows XP или 2000 сделать процесс системным или неудаляемым из Диспечера задач.
2. В Windows XP проблема с переключением на русский и английский. Я написал свою процедуру

procedure RUorENG(Bool: boolean);
begin
if Bool then LoadKeyBoardLayout("00000419",KLF_ACTIVATE) {Русский}
else LoadKeyBoardLayout("00000409",KLF_ACTIVATE); {Английский}
end;

Но эффект проявляется только для моего приложения.
Как заставить чтобы язык переключался и в других приложениях

Ответ желательно на мыло, потому как сейчас нет времени часто хаходить на форум.

Заранее благодарен


 
Rouse_   (2002-10-10 01:56) [1]

По первому вопросу, нужно написать сервис

Желаю успехов


 
Beglec   (2002-10-10 03:16) [2]

Моя программа всегда должна быть наведу, потому как показывает счет клиета online. Но некоторые шаловливые ручки пытаются данную фигню отключить.
Твкчто под сервис наврядли это пойдет.
А если пойджет то как это сделать.
Можно немного по подробнее
Да и еще сервисы бывают разные, их же тоже можно отрубать


 
Rouse_   (2002-10-10 03:20) [3]

В статьях помоемому было что-то про сервисы, кстати сервис с админскими правами обычный польователь не закроет

Желаю успехов


 
Beglec   (2002-10-10 03:22) [4]

Как это сделать!!!!?????
Я прекрасно это понимаю. Но как это сделать

В фак описано как создать процесс либо сервис.
А как присвоей своей программе эти права???


 
Rouse_   (2002-10-10 03:32) [5]

Вот пример получения привилегий на изменения в реестре

var
TokenHandle : THandle;
ProcId : DWORD;
Priv, Dummy : TOKEN_PRIVILEGES;
Ver : TOSVERSIONINFO;
const
SE_BACKUP_NAME = "SeBackupPrivilege";
begin
Ver.dwOSVersionInfoSize := Sizeof(Ver);
GetVersionEx(Ver);
if Ver.dwPlatformId = VER_PLATFORM_WIN32_NT then
begin
ProcID := 0;
if (OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
TOKEN_QUERY, TokenHandle)) and
(LookupPrivilegeValue(nil, SE_BACKUP_NAME, Priv.Privileges[0].Luid))
then
begin
Priv.PrivilegeCount := 1;
Priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
if not AdjustTokenPrivileges(TokenHandle, False, Priv, SizeOf(Dummy),
Dummy, ProcId) then
raise Exception.Create(SysErrorMessage(GetLastError));
end
else
raise Exception.Create(SysErrorMessage(GetLastError));
end;
//А здесь поместите код работы с реестром
end;


Желаю успехов



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

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

Наверх





Память: 0.45 MB
Время: 0.008 c
3-68642
Tornado
2002-09-27 09:25
2002.10.21
Мастерам. Подскажите


3-68677
Jeka
2002-10-01 10:29
2002.10.21
многострочный title


1-68757
AL2002
2002-10-09 19:23
2002.10.21
SaveDialog. Как убрать путь?


1-68815
Sabor
2002-10-09 20:31
2002.10.21
Stringgrid?


7-69035
Stas Ant
2002-08-14 07:00
2002.10.21
Виртуальный винт





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский