iCAx开思工具箱

标题: 【求助】PRO/TOOLKIT:ProToolkitDllLoad用法 [打印本页]

作者: leefoxv    时间: 2004-4-2 11:31
标题: 【求助】PRO/TOOLKIT:ProToolkitDllLoad用法
ProToolkitDllLoad有七个参数:
extern ProError ProToolkitDllLoad( ProName app_name,
     &nbsproCharPath exec_file,
     &nbsproCharPath text_dir,
     &nbsproBoolean user_display,
     &nbsproToolkitDllHandle* handle,
     &nbsproError* user_error_ret,
     &nbsproPath user_string_ret );
第一个参数,说 app_name  - The name of the application to initialize.
可是我输入ProName app_name = "MyApp";编译后说
error C2440: 'initializing' : cannot convert from 'char [6]' to 'unsigned short [32]'        There is no context in which this conversion is possible
后来查ProName,有typedef wchar_t &nbsproName[PRO_NAME_SIZE];
接着又有  
#ifndef _WCHAR_T_DEFINED
typedef unsigned short wchar_t;
#define _WCHAR_T_DEFINED
#endif
即是说这是一个unsigned short型的参数,可是在注册文件中,Name是一个字符串。
请各位大大告诉我怎么才能正确的传入参数,感激不尽
作者: leefoxv    时间: 2004-4-3 14:28
我用了ProName app_name;
ProStringToWstring(app_name,"MyApp");
  
但还是有问题
不清楚是什么问题,在proe中启动时说
外部程序'loader'初始化失败:错误'PRO_TK_BAD_INPUTS'
  
这是我的初始化函数,就是想实现在这个程序中可以加载别的应用程序。以后会做成动态选择性地加载,现在先实现静态加载。
不知各位大大有什么好的办法实现这个功能,不胜感激
extern "C" int user_initialize()
{
  
ProToolkitDllHandle* pThedll;
ProName app_name;
ProStringToWstring(app_name,"MyApp");
ProError status;
ProPath user_string_ret;
ProCharPath exec_file = "E:\\StdPartLib\\Release\\StdPartLib.dll";
ProCharPath text_dir = "E:\\StdPartLib\\Release\\text";
status = ProToolkitDllLoad(            app_name,
   exec_file,
   text_dir,
  &nbspRO_B_TRUE,
   pThedll,
   &status,
   user_string_ret   );
return status;
}
作者: leefoxv    时间: 2004-4-5 21:02
郁闷啊,没有人可以帮帮我吗,HELP!!!!
作者: dubingg    时间: 2004-4-28 00:54
我知道的话一定帮你,可惜……唉




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3