Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.90/10: Рейтинг темы: голосов - 10, средняя оценка - 4.90
TaYgA
17 / 17 / 4
Регистрация: 18.10.2009
Сообщений: 121
1

скрытый вид программы в Delphi

04.01.2010, 12:50. Просмотров 1830. Ответов 1
Метки нет (Все метки)

Здравствуйте, хочу написать программу, которая при загрузки Windows будет в скрытом виде висеть в процессах, а при нажатии exeшника будит разварачиваться... Написал автозагрузку через реастр:
Delphi
1
2
3
4
5
6
    Reg:=TRegistry.Create;
    Reg.RootKey:=hkey_current_user;
    Reg.OpenKey('software\microsoft\windows\currentversion\run',true);
    Reg.WriteString('Organizer.exe',ExtractFilePath(ParamStr(0))+'Organizer.exe');
    Reg.CloseKey;
    Reg.Free;
Немогу сделать чтоб программа была скрыта в процессах и разварачивалась при клике на exeшник.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.01.2010, 12:50
Ответы с готовыми решениями:

Внешний вид программы в Delphi
Возник такой вопрос. Можно ли в delphi сделать так, чтобы внешний вид...

Привести Delphi XE4 в привычный вид
Целый день искал в интернете информацию о том, как настроить внешний вид Delphi...

Внешний вид программы БД
Здравствуйте. У меня имеется база данных, в которой 4 таблицы, автозаполнение...

Переделать внешний вид программы
Доброго времени суток! помогите полностью переделать внешний вид программы,...

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

1
igoriy
871 / 542 / 117
Регистрация: 24.11.2009
Сообщений: 1,329
04.01.2010, 13:36 2
Для скрытия процесса

>> СКРЫТИЕ или отображение процесса из списка ctrl+alt+del

СКРЫТИЕ или отображение процесса в списке ctrl+alt+del

ПРАВИЛА ИСПОЛЬЗОВАНИЯ:

ДЛЯ скрытия собственного приложения из списка процессов, отображаемых
при нажатии CTRL+ALT+DEL, вызывайте функцию ShowHideInCad со следующими
параметрами:

ShowHideInCad (TakeMyApplicationProcessID, False) - и название Вашего
приложения будет скрыто из списка CTRL+ALT+DEL

ДЛЯ скрытия процесса чужого приложения, вызывайте функцию с такими
параметрами:

ShowHideInCAD (TakeProcessID('Заголовок окна скрываемого приложения'), FALSE)

Зависимости: windows
Автор: VID, vidsnap@mail.ru, ICQ:132234868, Махачкала
Copyright: VID
Дата: 23 мая 2002 г.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
unit cad;
 
interface
uses windows;
 
function RegisterServiceProcess(dwProcessID, dwType: Integer): Integer;
stdcall; external 'KERNEL32.DLL';
function ShowHideInCad(ProcessID: Integer; Show: Boolean): boolean;
function TakeProcessID(WindowTitle: string): Integer;
function TakeMyApplicationProcessID: Integer;
 
implementation
 
//Получение дескриптора процесса любого окна, по заголовку этого окна
 
function TakeProcessID(WindowTitle: string): Integer;
var
  WH: THandle;
begin
  result := 0;
  WH := FindWindow(nil, pchar(WindowTitle));
  if WH <> 0 then
    GetWindowThreadProcessID(WH, @Result);
end;
 
//Получение дескриптора процесса собственного приложения
 
function TakeMyApplicationProcessID: Integer;
begin
  Result := GetCurrentProcessID;
end;
 
//Отображение/Скрытие процесса в CTRL+ALT+DEL
 
function ShowHideInCAD(ProcessID: Integer; Show: Boolean): Boolean;
begin
  result := true;
  try
    //если show = true , то отображаем процесс в CAD, иначе - прячем
    if Show = True then
      RegisterServiceProcess(ProcessID, 0)
    else
      RegisterServiceProcess(ProcessID, 1);
  except result := false;
  end;
end;
 
end.
Но сам не пробовал

Добавлено через 9 минут
А вот для показа кликать по екзешнику не есть год так как прога уже запущена и получается что хочешь запустить еще раз лучше просто назначить какую-нибюудь клавишу при нажатии на которую прога покажется например:
Delphi
1
2
3
4
5
6
7
8
9
procedure TForm1.Timer1Timer(Sender: TObject);
 
begin
 Form1.Hide;
 if getasynckeystate ($49)<>0 then  // нажата "I"
    begin
      Timer1.Enabled:= False;
      Form1.Show;
    end;
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2010, 13:36

При запуске программы компоненты приобретают вид win98
Доброго времени суток всем! Помогите пожалуйста! Есть форма, на ней...

Есть исходник DLL на Delphi как (и возможно ли) написать похожее на VB.NET и использовать в среде программы написанной на Delphi
Суть вопроса вкратце такова - Есть исходник DLL написанной на Delphi Library...

В качестве f(x) использовать по выбору: sh(x), x2, . Отредактируйте вид формы и текст программы в соответстви
В качестве f(x) использовать по выбору: sh(x), x2, . Отредактируйте вид формы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru