Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.26;
Скачать: CL | DM;

Вниз

Не получается удалить иконку приложения из Atl+Tab   Найти похожие ветки 

 
leonidus ©   (2005-12-08 10:06) [0]

Уже все факи перечитал, но так и не получается в Windows XP удалить иконку моей программы из Atl+Tab.

Если делаю так:

procedure TForm1.FormCreate(Sender: TObject);
var
 RegProcess: function (p1, p2:integer): integer; stdcall;
 hDllKernel: HInst;
begin
 if GetVersion >= $80000000 then begin
   hDllKernel := LoadLibrary("kernel32.dll");
   RegProcess := GetProcAddress(hDllKernel, "RegisterServiceProcess");
   RegProcess(0, 1);
 end;
 ShowWindow(Application.Handle, SW_HIDE);
 SetWindowLong(Application.Handle, GWL_EXSTYLE,
   GetWindowLong(Application.Handle, GWL_EXSTYLE) or
   WS_EX_TOOLWINDOW);
end;

То кнопка программы просто пропадает из TaskBar`а, но по Atl+Tab она прекрасно видна.

Если делать так:

function RegisterServiceProcess(ProcessID, Typ: Integer): Integer;
external "KERNEL32.DLL";

procedure TForm1.Button1Click(Sender: TObject);
begin
RegisterServiceProcess(GetCurrentProcessId, 1);
ShowWindow(Application.Handle, SW_HIDE);
SetWindowLong(Application.Handle, GWL_EXSTYLE,
GetWindowLong(Application.Handle, GWL_EXSTYLE) or
WS_EX_TOOLWINDOW);
end;

то появляется ошибка "точка входа в процедуру RegisterServiceProcess не найдена в библиотеке KERNEL32.DLL"

Что делать?


 
Чапаев ©   (2005-12-08 10:56) [1]


> SetWindowLong(Application.Handle, GWL_EXSTYLE,
>    GetWindowLong(Application.Handle, GWL_EXSTYLE) or
>    WS_EX_TOOLWINDOW);

Гм... Стиль WS_EX_TOOLWINDOW тебе надо не устанавливать, а сбрасывать...

Ещё поиграйся с Application.ShowMainForm.


> то появляется ошибка "точка входа в процедуру RegisterServiceProcess
> не найдена в библиотеке KERNEL32.DLL"
>
> Что делать?

Читать ФАКи внимательно. RegisterServiceProcess есть только в виндах ветки 9х.



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

Текущий архив: 2006.02.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
15-1139147108
Вячеслав Бессонов
2006-02-05 16:45
2006.02.26
Begin end.


15-1139233884
PARUS
2006-02-06 16:51
2006.02.26
Нету спама!(Дуратский вопрос)


1-1138169327
dreamse
2006-01-25 09:08
2006.02.26
Цикл между двумя датами


2-1139659377
Интересующийся
2006-02-11 15:02
2006.02.26
Пример по работе с ресурсами из DLL


2-1139213191
Человек
2006-02-06 11:06
2006.02.26
Hookи