Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 10
1

Получить Handle AppID процесса

24.11.2014, 21:19. Просмотров 1192. Ответов 3
Метки нет (Все метки)


Здравствуйте. Есть приложение на delphi, в которой устанавливается Handle, для того, что-бы можно было запустить только одну копию приложения:

Delphi
1
2
3
4
5
Const AppID='my_application_2014';
Var Handle:THandle; ErrCode: dword; 
begin
  try
  Handle:=CreateFileMapping($FFFFFFFF,Nil,PAGE_READONLY,0,1,AppID);
Как можно получить этот идентификатор из C#, для того, что-бы приложение C# нельзя было запустить, если запущено приложение Delphi? Не имя процесса, а именно этот идентификатор.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.11.2014, 21:19
Ответы с готовыми решениями:

Получить имя процесса зная handle
кому-то да понадобиться вот код : private static extern Int32...

Как узнать ID процесса (PID) по дескриптору окна (Handle)?
АП. Интересует как узнать PID по Handle.

Получить handle дочернего окна
Есть следующее дерево окон (из Spy++): Пытаюсь получить хэндл дочернего окна следующим...

Получить handle кнопки в нестандартом случае
Есть программа при просмотре программы в Spy++ определяется две кнопки в одном классе "TBitBtn" и...

3
74 / 26 / 19
Регистрация: 13.10.2014
Сообщений: 89
24.11.2014, 21:24 2
если я правильно понял вопрос, обмен данными между приложениями на разных языках - вещь сугубо личная, я бы пошел копать сюда

http://habrahabr.ru/post/81067/
0
Почетный модератор
Эксперт .NET
8691 / 3643 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
25.11.2014, 01:14 3
Лучший ответ Сообщение было отмечено VladimirMerk как решение

Решение

VladimirMerk, используйте MemoryMappedFile.OpenExisting. Если удалось открыть - значит приложение на Delphi уже запущено, если исключение FileNotFoundException - значит маппинг еще не создан -> приложение не запущено.

Но вообще для этого используют мьютексы, если не требуется общение между процессами.
2
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 10
25.11.2014, 17:27  [ТС] 4
Спасибо за подсказку. Все получилось.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.11.2014, 17:27

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Получить ID процесса если известно его хэндл, название окна или название процесса
а как получить ID процесса если известно его хэндл, название окна или название процесса?

Как получить Handle Окна при наведении мышкой
Здравствуйте! Как получить Handle Окна при наведении мышкой и как обозначить окно красным цветом?

Как получить информацию о другом окне, зная его Handle
Как получить информацию о другом окне если есть Хендл(расположение, заголовок, размеры и т.д.)? И...

Как найти Handle окна процесса?
Здраствуйте! Вот решил розобраться какие в C# есть возможности для роботы с процессами. Научился...


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

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

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