Login
Как вызвать метод процесса в C#?
1314 просмотров
Перейти к просмотру всей ветки
in Antwort HMr 08.05.08 20:26
Ну и все стало в этом отношении ясно.
-----
Настолько, что поменялось направление передачи данных?
Я, например, уже перестал понимать что, откуда и куда должно пасоваться.
Ну а чисто по человечески хотябы пару строчек сишного кода
-----
Сишного - не попалось, дал - паскалевский - последний из трех линков. В сишном - все тоже самое.
Дополнительно. В сишном виде, но урезанное дано тут:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1621400&SiteID=1
Поискать можно по МСДНу
"Inter Process Communication" SendMessage
или только по применению SendMessage(). Плюс - смотри внизу.
есть это описание
-----
Угу... кто посмотрел - выскажется подробнее. :)
public IntPtr drugoePrilozhenieH;
-----
Есть, по крайней мере мне встречался, вполне определенный тип для хранения хендлов - HINSTANCE. Незачем придумывать еще одну сущность.
HINSTANCE myAppH = Options;
-----
Ну вот и HINSTANCE. Правда передаваемый параметр имеет тип LPCTSTR - указатель на строку и это отнюдь не хендле вызывающего приложения. Как конвертнуть - зависит от того как ты его закодишь для передачи и как его покорежит при передаче. В любом случае - этот параметор не сам хендле.
Как в OnStart инициализировать мою переменную
-----
Думаю, что проще всего - через SendMessage() и доработку оконной процедуры в основном приложении для ловли этого мессаджа.
Попутно - как ты собираешься выяснять хендле загруженной библиотеки? :) Насколько Я помню, его можно поймать только при загрузке... которую у тебя выполняет чужое (закрытое) приложение... Позднее будет получаться хендле всего приложения, а не либы...
-----
Настолько, что поменялось направление передачи данных?
Я, например, уже перестал понимать что, откуда и куда должно пасоваться.
Ну а чисто по человечески хотябы пару строчек сишного кода
-----
Сишного - не попалось, дал - паскалевский - последний из трех линков. В сишном - все тоже самое.
Дополнительно. В сишном виде, но урезанное дано тут:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1621400&SiteID=1
Поискать можно по МСДНу
"Inter Process Communication" SendMessage
или только по применению SendMessage(). Плюс - смотри внизу.
есть это описание
-----
Угу... кто посмотрел - выскажется подробнее. :)
public IntPtr drugoePrilozhenieH;
-----
Есть, по крайней мере мне встречался, вполне определенный тип для хранения хендлов - HINSTANCE. Незачем придумывать еще одну сущность.
HINSTANCE myAppH = Options;
-----
Ну вот и HINSTANCE. Правда передаваемый параметр имеет тип LPCTSTR - указатель на строку и это отнюдь не хендле вызывающего приложения. Как конвертнуть - зависит от того как ты его закодишь для передачи и как его покорежит при передаче. В любом случае - этот параметор не сам хендле.
Как в OnStart инициализировать мою переменную
-----
Думаю, что проще всего - через SendMessage() и доработку оконной процедуры в основном приложении для ловли этого мессаджа.
Попутно - как ты собираешься выяснять хендле загруженной библиотеки? :) Насколько Я помню, его можно поймать только при загрузке... которую у тебя выполняет чужое (закрытое) приложение... Позднее будет получаться хендле всего приложения, а не либы...