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

Вниз

Скрыть элементы рабочего стола   Найти похожие ветки 

 
Hokum   (2002-02-18 16:39) [0]

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


 
Юрий Зотов ©   (2002-02-18 16:57) [1]

Файл system.ini
Секция boot
Параметр shell=ваша_программа

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


 
Polevi ©   (2002-02-18 17:58) [2]

можно создать TOPMOST окно во весь экран


 
Nikolay ©   (2002-02-18 18:39) [3]

2 это только после перезугрузки.


 
Nikolay ©   (2002-02-18 18:39) [4]

2Юрий Зотов это только после перезугрузки.


 
drpass ©   (2002-02-19 11:13) [5]

Можно из своей программы принудительно прибить explorer


 
VuDZ ©   (2002-02-19 12:22) [6]

всё элементарно, Ватсон:
1. находим хэнд окна - это класс SysListView32, заголовок - "FolderView".
2. Делаем ShowWindow(hwnd, SW_HIDE);
3. UpdateWindow();
и всё... иконок нет...

если они нужны - ShowWindow(hwnd, SW_SHOW);


 
Sasha9   (2002-02-23 19:24) [7]

а легче всего enumwindows(см. MS SDK)


 
MCi ©   (2002-02-24 15:13) [8]

Скрыть иконки с рабочего стола можно также через реестр:
в разделе
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System" создаешь параметр типа DWORD "NoDispCPL" со значением 1. После этого просто перезагружаешь Explorer и иконок как небывало(даже правая кнопка мыши не работает).


 
VuDZ ©   (2002-02-24 15:26) [9]

2Sasha9 чем легче?
и что ты с ним сделаешьс этими окнами?

PS я конечно понимаю, что паскалю пофигу на регистр ф-ий, но если уж ссылаешся на SDK пиши как есть, EnumWindows(), etc.


 
Sasha9 ©   (2002-02-24 22:54) [10]

2VuDZ
возвращаясь к первоначальному вопросу:EnumWindows() даёт хендлы всех окон, а с их помощью можно спрятять все окна и будет чистый экран


 
VuDZ ©   (2002-02-25 02:07) [11]

а, сорри, я не прав, я предложил метод что-бы спрятать все иконки с раб. стола... бывает-с...


 
sniknik ©   (2002-02-26 00:37) [12]

Из программы

Прячет таскбар.

var
HTaskBar: THandle;
begin
HTaskBar:= FindWindow("SHELL_TRAYWND", nil);
ShowWindow(HTaskBar, SW_HIDE);
end;

прячет рабочий стол

function GetDesktopListViewHandle: THandle;
var S: String;
begin
Result := FindWindow("ProgMan", nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
SetLength(S, 40);
GetClassName(Result, PChar(S), 39);
if PChar(S) <> "SysListView32" then Result := 0;
end;

var HMainForm: THandle;
begin
HMainForm:= GetDesktopListViewHandle;
Button4.Caption:= IntToStr(HMainForm);
ShowWindow(HMainForm, SW_HIDE);
end;

замена
ShowWindow(HMainForm, SW_HIDE);
на
SendMessage(HMainForm, WM_CLOSE, 0, 0);
закрывает. В этом случае востанавливается только перезагрузкой.


 
SeF ©   (2002-02-27 02:43) [13]

procedure TForm1.Button1Click(Sender: TObject);
begin
ShowWindow(FindWindow("Progman", "Program Manager"), SW_HIDE);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ShowWindow(FindWindow("Progman", "Program Manager"), SW_SHOW);
end;


минусы скрывает только значки на рабочем столе. (9x/me/2k работает, XP не пробовал)



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

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

Наверх




Память: 0.49 MB
Время: 0.02 c
3-73049
BOOMER
2002-04-24 16:02
2002.05.23
MIDAS!!!


1-73296
Vcoder
2002-05-11 19:25
2002.05.23
Как отловить команду выключения компьютера?


1-73179
-Jack-
2002-05-10 16:51
2002.05.23
Правка файла в HEX


4-73449
Roman_
2002-03-21 16:22
2002.05.23
Эмуляция третей кнопки мышки.


1-73307
com6
2002-05-12 08:09
2002.05.23
Как открыть текстовой файл из проги в Delphi в нотепаде