|
Жора
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 91
|
|
передача инфы между приложениями
« : 20 Июль 2011, 18:30:52 »
|
|
Добрый день. есть 2 эксешника один написан на visual второй на Builder. Необходимо из программы, написанной в билдер передать данные (структуру) во вторую программу, написанную на visual. причем одну и втрую программу можно корректировать.
Как это сделать?
Можно ли это сделать при помощи ShellExecute?
|
|
|
|
|
|
Hammersoft
Участник
Сказали спасибо: +23/-2
Offline
Сообщений: 167
|
|
Re: передача инфы между приложениями
« Ответ #1 : 20 Июль 2011, 18:54:06 »
|
|
http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D0%B6%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D1%81%D1%81%D0%BD%D0%BE%D0%B5_%D0%B2%D0%B7%D0%B0%D0%B8%D0%BC%D0%BE%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D0%B5
|
|
|
|
|
|
S0mbre
Глобальный модератор
Сказали спасибо: +1113/-22
Offline
Сообщений: 2132
S0mbre
|
|
Re: передача инфы между приложениями
« Ответ #2 : 21 Июль 2011, 10:16:35 »
|
|
Первое, что приходит в голову, - WM_COPYDATA
Там же на msdn есть пример
|
|
|
|
|
|
Жора
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 91
|
|
Re: передача инфы между приложениями
« Ответ #3 : 21 Июль 2011, 13:25:18 »
|
|
Спасибо.
Использую sendmessage, но есть еще одна проблемка. Структура заполнена переменными типа String. Так вот, на приемную сторону значения переменных приходят в виде "". то есть пустыми. причем если переменную совсем не заполнить значением приходит NULL. я сделал вывод, что просто не передается значение переменной.
|
|
|
|
|
|
POV
Участник
Сказали спасибо: +107/-7
Offline
Сообщений: 640
|
|
Re: передача инфы между приложениями
« Ответ #4 : 21 Июль 2011, 13:57:08 »
|
|
Не знаю насколько удобная оболочка в вижуале сделана для работы с сокетами,н о компонента в билдере чрезвычайно простая и удобная.
|
|
|
|
|
|
Жора
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 91
|
|
Re: передача инфы между приложениями
« Ответ #5 : 21 Июль 2011, 16:14:29 »
|
|
не. надо использовать sendmessage. вот еще заметил Int передается без проблем а также массив char[255]. почему проблемы со String?
|
|
|
|
|
|
Rius
Давний друг
Сказали спасибо: +116/-5
Offline
Сообщений: 753
|
|
Re: передача инфы между приложениями
« Ответ #6 : 21 Июль 2011, 16:26:08 »
|
|
Потому что String это не char[].
Передавайте данные из String в виде массива.
|
|
|
|
|
|
Жора
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 91
|
|
Re: передача инфы между приложениями
« Ответ #7 : 21 Июль 2011, 16:32:31 »
|
|
Потому что String это не char[].
Передавайте данные из String в виде массива.
Это понятно, что не char. А String почему нельзя передавать?
|
|
|
|
|
|
oxotnik
Глобальный модератор
Сказали спасибо: +100/-15
Offline
Сообщений: 2425
|
|
Re: передача инфы между приложениями
« Ответ #8 : 21 Июль 2011, 17:29:37 »
|
|
Потому что String это не char[].
Передавайте данные из String в виде массива.
Это понятно, что не char. А String почему нельзя передавать?
Потому что вижуалка не знает что такое String, и даже если передавать std::string которую знают обои, то тоже нельзя, т.к. внутреняя реализация может быть разная
|
|
|
|
|
|
Жора
Участник
Сказали спасибо: +0/-0
Offline
Сообщений: 91
|
|
Re: передача инфы между приложениями
« Ответ #9 : 22 Июль 2011, 09:26:37 »
|
|
Потому что вижуалка не знает что такое String, и даже если передавать std::string которую знают обои, то тоже нельзя, т.к. внутреняя реализация может быть разная
Да я попробовал между борландами передать тоже самое.
|
|
|
|
|
|
Rius
Давний друг
Сказали спасибо: +116/-5
Offline
Сообщений: 753
|
|
Re: передача инфы между приложениями
« Ответ #10 : 22 Июль 2011, 10:42:28 »
|
|
String хранит указатель на массив char, а не сам массив. Поэтому передать String и любые другие подобные классы вы не можете.
|
|
|
|
|
|