Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема с вызовом функции из DLL в RadStudio / 16 сообщений из 16, страница 1 из 1
08.05.2017, 15:59
    #39450096
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
...
Рейтинг: 0 / 0
08.05.2017, 16:26
    #39450116
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73,

Все плохо с пониманием процесса линковки, устройства программ и ABI
...
Рейтинг: 0 / 0
08.05.2017, 17:17
    #39450132
alexy_black
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
там стоит мерлин и арет на разыменование нулевого указателя "ты не пройдешь!" :)
...
Рейтинг: 0 / 0
08.05.2017, 21:06
    #39450190
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
alexy_black,

поправил, если про

Код: plaintext
1.
  //	Connectos Connect = NULL;



как вызвать функцию правильно?
...
Рейтинг: 0 / 0
08.05.2017, 21:07
    #39450191
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Siemargl,

Вообще не спорю про "всё плохо". по сему и обратился за помощью.
...
Рейтинг: 0 / 0
09.05.2017, 00:28
    #39450209
Siemargl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73,

Нужно прочитать для начала пару статей по указанным темам.

Тыканье пальцем наугад - не наш метод, "помогитяяяя" - тоже.

Когда появятся корректно сформулированные вопросы, можно будет помогать. Но нужно знать половину ответа, чтобы правильно задать вопрос (с) Абсолютный ответчик
...
Рейтинг: 0 / 0
10.05.2017, 09:45
    #39450579
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73alexy_black,

поправил, если про

Код: plaintext
1.
  //	Connectos Connect = NULL;



как вызвать функцию правильно?

Маленький совет: если ты ничего не понимаешь, не используй динамическую загрузку .dll. Вообще.
Используй библиотеки импорта или вообще статические библиотеки.
Тебе там динамическая загрузка .dll практически гарантировано не нужна.
...
Рейтинг: 0 / 0
07.06.2017, 22:45
    #39468218
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
что делаю не так?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
String Worda = "plcommpro.dll";
	wchar_t* plcommpro = Worda.w_str();
	hDLL = LoadLibrary(plcommpro);
	if (!hDLL) {
	  ShowMessage("Невозможно загрузить plcommpro.dll");
	  return;
	}
	typedef void __cdecl (*Connectos)(char *param);
	Connectos Connecto = (Connectos)GetProcAddress(hDLL, "Connect");
	const char *Parameters = "protocol=TCP,ipaddress=192.168.12.154,port=4370,timeout=2000,passwd=";
	int h = Connecto(Parameters);



выводит ошибку в строке int h = Connecto(Parameters);
[bcc32 Error] Unit3.cpp(46): E2034 Cannot convert 'const char *' to 'char *'
...
Рейтинг: 0 / 0
08.06.2017, 01:05
    #39468239
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73что делаю не так?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
String Worda = "plcommpro.dll";
	wchar_t* plcommpro = Worda.w_str();
	hDLL = LoadLibrary(plcommpro);
	if (!hDLL) {
	  ShowMessage("Невозможно загрузить plcommpro.dll");
	  return;
	}
	typedef void __cdecl (*Connectos)(char *param);
	Connectos Connecto = (Connectos)GetProcAddress(hDLL, "Connect");
	const char *Parameters = "protocol=TCP,ipaddress=192.168.12.154,port=4370,timeout=2000,passwd=";
	int h = Connecto(Parameters);



выводит ошибку в строке int h = Connecto(Parameters);
[bcc32 Error] Unit3.cpp(46): E2034 Cannot convert 'const char *' to 'char *'

Отвечу кратко и по делу:

ВСЁ делаешь не так...
...
Рейтинг: 0 / 0
08.06.2017, 01:23
    #39468241
rdb_dev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73Siemargl,

Вообще не спорю про "всё плохо". по сему и обратился за помощью.Читать стандарт C и C++ до просветления.
...
Рейтинг: 0 / 0
08.06.2017, 01:30
    #39468244
rdb_dev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73выводит ошибку в строке int h = Connecto(Parameters);
[bcc32 Error] Unit3.cpp(46): E2034 Cannot convert 'const char *' to 'char *'Всё правильно выдает! Ты описал указатель на функцию с параметром типа "char*" (указатель на строку), а Parameters задекларирован как "const char*".
Поправь объявление типа указателя на функцию.
...
Рейтинг: 0 / 0
08.06.2017, 08:54
    #39468304
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
rdb_devMizer73выводит ошибку в строке int h = Connecto(Parameters);
[bcc32 Error] Unit3.cpp(46): E2034 Cannot convert 'const char *' to 'char *'Всё правильно выдает! Ты описал указатель на функцию с параметром типа "char*" (указатель на строку), а Parameters задекларирован как "const char*".
Поправь объявление типа указателя на функцию.

да пробовал, выдает
[bcc32 Error] Unit3.cpp(47): E2468 Value of type void is not allowed
...
Рейтинг: 0 / 0
08.06.2017, 08:55
    #39468306
Mizer73
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
MasterZiv,

а как?
...
Рейтинг: 0 / 0
08.06.2017, 09:14
    #39468311
rdb_dev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73да пробовал, выдает
[bcc32 Error] Unit3.cpp(47): E2468 Value of type void is not allowedКак именно пробовал?
...
Рейтинг: 0 / 0
08.06.2017, 12:33
    #39468515
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Mizer73MasterZiv,

а как?


MasterZivМаленький совет: если ты ничего не понимаешь, не используй динамическую загрузку .dll. Вообще.
Используй библиотеки импорта или вообще статические библиотеки.
Тебе там динамическая загрузка .dll практически гарантировано не нужна.
...
Рейтинг: 0 / 0
08.06.2017, 12:36
    #39468521
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с вызовом функции из DLL в RadStudio
Модератор:
Mizer73, если ты не читаешь, что тебе советуют, и не хочешь думать и делать сам, продолжать топик бесполезно.
Никто за тебя твою работу делать не будет.
Незачем плодить топики только потому, что тебе никто не даёт готовое решение.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема с вызовом функции из DLL в RadStudio / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]