请问如何在mt5和 dll之间传递字符串,多谢! 新评论 brookslei 2023.09.30 07:59 //mt5 中的函数 void checkStock_update() { string symb="d1234567890" symb=ea_idGetStock(symb,0); printf("checkStock_update %s : '%d'", symb, 1); //输出乱码 ea_idGetStock(symb,0); printf("checkStock_update %s : '%d'", symb, 2); //输出乱码 } //dll中的函数 ---------------------------------------------------- #define EXstring __declspec( dllexport) string __stdcall EXstring ea_idGetStock(char* sstock, const int ss) { // return( "999999"); //dll 函数直接返回字符串给mt5,打印是乱码, dll函数间互相调用可以. debugprint(sstock, 11111); //打印mt5的字符串也不对,只输出一个首字母d. sstock="s301500"; return(sstock); //通过字符串指针也不行. } Create your own MetaTrader extension (dll) 创建您自己的MetaTrader扩展(dll)。 Passing a string to a DLL Function Sky All 2023.09.30 09:21 #1 【如何防止机器人误判】讨论代码时请使用代码表述功能 brookslei 2023.09.30 12:07 #2 Zhang Fengqun #: 【如何防止机器人误判】讨论代码时请使用代码表述功能 好的,谢谢! brookslei 2023.09.30 12:11 #3 应该使用wchar_t而不是char! 新评论
//mt5 中的函数
void checkStock_update()
{
string symb="d1234567890"
symb=ea_idGetStock(symb,0);
printf("checkStock_update %s : '%d'", symb, 1); //输出乱码
ea_idGetStock(symb,0);
printf("checkStock_update %s : '%d'", symb, 2); //输出乱码
}
//dll中的函数 ----------------------------------------------------
#define EXstring __declspec( dllexport) string __stdcall