Структура программирования, программирование, языки программирования, книги программирование На сайте представлена информация про программирование в Интернете и работу  

Какой версией Delphi вы пользуетесь, Просто интересно знать...
Округление чисел, Как округ число в большую сторону
Как какой-либо переменной передать, все свойства какого-нибудь компонента?
Можно ли открючить рамку у TRadioGroup?
3D-объекты
События при изменении изображения на экр
Как программно закрыть окно чужой программы?, Зная его заголовок. MessageDlg
Научить приложение в Делфи говорить
Монитор!!!, подскажите недотёпе
Как передвигать программно курсор в TEdit-e
Помогите
Как обработать минимизацию формы?, Как обработать минимизацию формы?
Компонент в RichEdit, Компонент в RichEdit мешает
Полигон для формы, Создание, редактирование полигонов
Аналоги процедур
Задачка по программированию есть.
Как попасть в ProgramFiles, Как попасть в ProgramFiles
Виртуальные диски, и работа с ними
Запуск программы с ограниченными правами, Win2003Server Ent + MSSQL и сетевой диск
Файловый менеджер, Помогите может кто уже писал
Как прекрепить файл к The Bat!, Не подскажите?
длинная строка
DELPHI 2005, Delphi 9
Telnet, про телнет
Компоненты для плоского меню
как присоединить поток к чужой проге?
TeeChart 7.0 Pro, Качайте
Как передать управление другой процедуре?
Работа с типами данных, Single и array [0..3] of byte
Компоненты для создания меню в стиле XP, Не знаете - есть ли они в природе?
Как Вы относитесь к курящим девушкам?
Как запаролить открытие формы в Delphi?
Система ленейных уравнений, Метод Гаусса
Данные по порту...
Нужен ZIP компонент, позволяющий сжатие данных по блокам
блокировка текстового файла, блокировка текстового файла
DelphiX для Delphi 6
Компонент "богатый текст", написать его...
Как записать динамический массив в бинарный файл.
Как вставить файл WAVES.S3M в форму
DBGrid, Проблема с настройками свойств
Как запустить "'desk.cpl" расширение .cpl, расширение .cpl
Создание события, Новое событие
Задача на деревья, Может кто знает как решить это?
Синтаксический и лексический анализаторы, Каков алгоритм их работы
OLE и TWebBrowser, OLE и TWebBrowser
ВЫзов Фукнкции, помогите высзвать функцию
Как запустить файл из system32 расширения .msc
Как отключить кнопку развернуть
как в программе узнать запущена другая программа?
Рисунок с рабочго стола по LAN, Рисунок с рабочго стола
вот блин а Дельфи - это СЛОЖНАЯ ВЕЩЬ, и никто не предуредил
Вложенные циклы, Кол-во вложенных циклов
Строки, общая подстрока
Как пройти из точки A(x1;y1) в точку B(x2;y2)..., ...по прямой линии
Помогите найти ошибку в модуле компонента, для компиляции
Image через Timer
Написание Service
Как копировать одну ячейку StringGrid'a?
Системное время
frames, or..?
список MsSql серверов
Скины для формы
Ошибка в наследнике TStringGrid, Ошибка в наследнике TStringGrid
Динамическое создание обьектов, как динамически создать обьект???
Динамическое создание форм
Помогите пожалуйчта решить сложную задачку, из префиксной формы в постфиксную
Работа с файлом, как проч. ф. по 20 симв. в строках
screensaver
Как к приложению прикрепить иконку?

Платные хостинги     Раскрутка сайта     Книги по программированию


как в программе узнать запущена другая программа?

Только здесь 1000 посетителей на Ваш сайт всего за 3 у.е.!

- Здравствуйте . Прошу сообщить , как в программе узнать запущена другая программа или нет .

- Как так?! Какая программа? Своя собственная?Можно поточнее...

- а может через WinApi? Это сообщение отредактировал Ddddddelphi - 11.12.2004, 12:47

- Найди в нете такую хелпу как Kuliba. Там точно было.Способ еще зависит от того имеет ли др. приложение окно иил нет.Вот из кулибы."Получение списка запущеных приложенийIgor Nikolaev aKa The Sprite предлагает следующий код:-------------------------------------------------------------------------------- procedure TForm1.Button1Click(Sender: TObject);VARWnd : hWnd;buff: ARRAY [0..127] OF Char;beginListBox1.Clear;Wnd := GetWindow(Handle, gw_HWndFirst);WHILE Wnd <> 0 DO BEGIN {Hе показываем:}IF (Wnd <> Application.Handle) AND {-Собственное окно}IsWindowVisible(Wnd) AND {-Hевидимые окна}(GetWindow(Wnd, gw_Owner) = 0) AND {-Дочернии окна}(GetWindowText(Wnd, buff, sizeof(buff)) <> 0)THEN BEGINGetWindowText(Wnd, buff, sizeof(buff));ListBox1.Items.Add(StrPas(buff));END;Wnd := GetWindow(Wnd, gw_hWndNext);END;ListBox1.ItemIndex := 0;end; "Еще оттуда же."Как получить хэндлы всех пpоцессов, котоpые запущены на данный момент в системе?Nomadic отвечает:Под Windows 95 это возможно с использованием вспомогательных инфоpмационных функций (tool help functions).Для получения списка пpоцессов надо делать следующее:Cпеpва вызывается фукция -------------------------------------------------------------------------------- hSnapshot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0)// - получение снимка состояния системы Process32First() - получене инфоpмации о пеpвом пpоцессе в спискеДалее в цикле Process32Next() - получение инфоpмации о следующем пpоцессе в спискеПример:>== Режем pаз ==>-------------------------------------------------------------------------------- unit KernlUtl;interfaceuses TlHelp32, Windows, Classes, Sysutils;procedure GetProcessList(List: TStrings);procedure GetModuleList(List: TStrings);function GetProcessHandle(ProcessID: DWORD): THandle;procedure GetParentProcessInfo(var ID: DWORD; var Path: String);constPROCESS_TERMINATE = $0001;PROCESS_CREATE_THREAD = $0002;PROCESS_VM_OPERATION = $0008;PROCESS_VM_READ = $0010;PROCESS_VM_WRITE = $0020;PROCESS_DUP_HANDLE = $0040;PROCESS_CREATE_PROCESS = $0080;PROCESS_SET_QUOTA = $0100;PROCESS_SET_INFORMATION = $0200;PROCESS_QUERY_INFORMATION = $0400;PROCESS_ALL_ACCESS =STANDARD_RIGHTS_REQUIRED or SYNCHRONIZE or $0FFF;implementationprocedure GetProcessList(List: TStrings);varI: Integer;hSnapshoot: THandle;pe32: TProcessEntry32;beginList.Clear;hSnapshoot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if (hSnapshoot = -1) thenExit;pe32.dwSize := SizeOf(TProcessEntry32);if (Process32First(hSnapshoot, pe32)) thenrepeatI := List.Add(Format('%x, %x: %s',[pe32.th32ProcessID, pe32.th32ParentProcessID, pe32.szExeFile]));List.Objects[I] := Pointer(pe32.th32ProcessID);until not Process32Next(hSnapshoot, pe32);CloseHandle (hSnapshoot);end;procedure GetModuleList(List: TStrings);varI: Integer;hSnapshoot: THandle;me32: TModuleEntry32;beginList.Clear;hSnapshoot := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, 0);if (hSnapshoot = -1) thenExit;me32.dwSize := SizeOf(TModuleEntry32);if (Module32First(hSnapshoot, me32)) thenrepeatI := List.Add(me32.szModule);List.Objects[I] := Pointer(me32.th32ModuleID);until not Module32Next(hSnapshoot, me32);CloseHandle (hSnapshoot);end;procedure GetParentProcessInfo(var ID: DWORD; var Path: String);varProcessID: DWORD;hSnapshoot: THandle;pe32: TProcessEntry32;beginProcessID := GetCurrentProcessID;ID := -1;Path := '';hSnapshoot := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if (hSnapshoot = -1) thenExit;pe32.dwSize := SizeOf(TProcessEntry32);if (Process32First(hSnapshoot, pe32)) thenrepeatif pe32.th32ProcessID = ProcessID thenbeginID := pe32.th32ParentProcessID;Break;end;until not Process32Next(hSnapshoot, pe32);if ID <> -1 thenbeginif (Process32First(hSnapshoot, pe32)) thenrepeatif pe32.th32ProcessID = ID thenbeginPath := pe32.szExeFile;Break;end;until not Process32Next(hSnapshoot, pe32);end;CloseHandle (hSnapshoot);end;function GetProcessHandle(ProcessID: DWORD): THandle;beginResult := OpenProcess(PROCESS_ALL_ACCESS, True, ProcessID);end;end. "P.S. седовательно надо это понимать так, что процесс иприложение не одно и то же.

-

Интернет казино     Онлайн игры     Увеличение члена     Купить DVD


Главная страница | opengl программирование | программирование бейсик | программирование интерфейса | программирование pocket | программирование заказы | задача динамического программирования | prolog программирование | стохастическое программирование | процедурное программирование | история языков программирования | структура программирования | языки программирования высокого уровня | программирование устройств | функции программирования | программирование siemens | списки программирование | язык программирования java | олимпиада программирование | программирование мобильных телефонов | дипломная работа программирование | программирование palm | Ссылки

Все про процедурное программирование