全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3235
推到 Plurk!
推到 Facebook!

載入DLL 執行完後出現"Invalid pointer operation"的問題

尚未結案
kugids
一般會員


發表:14
回覆:10
積分:4
註冊:2005-04-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-10 01:12:32 IP:218.162.xxx.xxx 未訂閱
In exe:    function myFun:string;far;external 'myDLL.dll'; implementation    {$R *.dfm}    procedure TForm1.Button1Click(Sender: TObject); begin   ShowMessage(myFun); end;    --------------------------------------------------------------------- In DLL:    library myDLL;    uses   ShareMem,   SysUtils,   Classes;    {$R *.res} function myFun():string;export;  begin    result := 'Holle!Boy!';  end;     exports   myFun; begin end.    為什麼function or precdure的型態宣告string或array就出現"Invalid pointer operation"的錯誤呢!!    救救我吧    
yyu10
中階會員


發表:9
回覆:99
積分:96
註冊:2005-02-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-10 09:28:23 IP:220.244.xxx.xxx 未訂閱
首先, 打开你的测试程式的专案[View]->[Project Manager],    1. 在专案中所有的Pas文档的interface uses的最前面里加入ShareMem. 2. 专案本身有个文档(.dpr), 在这个文档最前面里加入ShareMem. 如下例,
program Test;    uses
  ShareMem,  //这可能是你漏掉的地方.
  Forms,
  SysUtils,
  testbed in 'testbed.pas' {TestFrm},
  LogFrm in '..\MyLib\LogFrm.pas' {messageWindow},
  utils in '..\MyLib\common\utils.pas',
  Types in '..\MyLib\Common\Types.pas';    {$R *.RES}    begin
  DateSeparator := '/';
  ShortDateFormat := 'dd/mm/yyyy';      Application.Initialize;
  Application.Title := 'Delphi Test';
  Application.CreateForm(TTestFrm, TestFrm);
  Application.CreateForm(TLogFm, LogFm);
  Application.Run;
end.
_________________________ Programming is a passion
kugids
一般會員


發表:14
回覆:10
積分:4
註冊:2005-04-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-11 02:14:35 IP:218.162.xxx.xxx 未訂閱
謝謝啦!! 我終於解決了^^ 感恩~~
系統時間:2024-07-07 12:29:54
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!