我用delphi做的动态链接库,在delphi下调用,其中要用pchar传字符串。可是我在dll中使用Showmessage()发现全是乱码?怎么回事?请您指点,最好能给一个小例子。
谢谢。如果我是用String传递字符串,都要在哪里加那个shareMEM unit(好像是这个名字?) 在主调程序中也要加吗?
谢谢。

解决方案 »

  1.   

    只要对字符串强行转换就行了pchar(Your_String)就OK了!
      

  2.   

    NO.1
    uses
      shareMEM //第一位,主调文件不用加,打包时带delphi的一个库文件;
    NO.2:
      PChar(StringTypeValue);
      

  3.   

    我的函数原型是这样的
    function DoStk(ID:pChar;QX:integer;DBUser:pChar;DBPwd:pChar;UserID:pChar):boolean;stdcall;
    begin
        ...
        ShowMessage(string(DBUser)+'---'+string(dbPwd));
        ...
    end;我调用时是这样写的
    DoStk('123',1,'SchoolUser','SchoolUser','11111111');
    SchoolUser分别对应着DBUser和DBPwd还用加pchar强制转换吗?