線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1530
推到 Plurk!
推到 Facebook!

參數傳遞問題

尚未結案
yx_huang77
一般會員


發表:46
回覆:64
積分:22
註冊:2004-03-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-16 15:07:57 IP:220.142.xxx.xxx 未訂閱
我要執行HPS.exe 程式,順便傳遞 sUserID變數過去,但是傳過去的值卻是sUserID字串,請問是哪裡錯了    if WinExec('G:\Winprg\Sprg\HPS.exe sUserID, SW_MAXIMIZE)<31 then
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-16 15:12:51 IP:211.20.xxx.xxx 未訂閱
引言: 我要執行HPS.exe 程式,順便傳遞 sUserID變數過去,但是傳過去的值卻是sUserID字串,請問是哪裡錯了 if WinExec('G:\Winprg\Sprg\HPS.exe sUserID, SW_MAXIMIZE)<31 then
yx_huang77 你好 你應該如下處理 if WinExec('G:\Winprg\Sprg\HPS.exe "' sUserID '"', SW_MAXIMIZE)<31 then
yx_huang77
一般會員


發表:46
回覆:64
積分:22
註冊:2004-03-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-16 15:52:52 IP:220.142.xxx.xxx 未訂閱
出現錯誤 [Error] Main.pas(186): Incompatible types: 'String' and 'PAnsiChar'
yx_huang77
一般會員


發表:46
回覆:64
積分:22
註冊:2004-03-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-16 15:55:05 IP:220.142.xxx.xxx 未訂閱
應該是這個錯誤 [Error] Main.pas(186): Not enough actual parameters
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-16 16:35:26 IP:211.20.xxx.xxx 未訂閱
引言: 你應該如下處理 if WinExec('G:\Winprg\Sprg\HPS.exe "' sUserID '"', SW_MAXIMIZE)<31 then
yx_huang77 你好
改成如下
Var
  Cmds : String;
Begin
  Cmds := 'G:\Winprg\Sprg\HPS.exe "' sUserID '"';
  if WinExec(Cmds,SW_MAXIMIZE)<31 then
  .....
End;
yx_huang77
一般會員


發表:46
回覆:64
積分:22
註冊:2004-03-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-04-16 16:53:36 IP:220.142.xxx.xxx 未訂閱
還是出問題 誰來救救我 [Error] Main.pas(187): Missing operator or semicolon
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-04-16 16:57:04 IP:211.20.xxx.xxx 未訂閱
是否可以貼出相關程式碼,以利錯誤的判斷
yx_huang77
一般會員


發表:46
回覆:64
積分:22
註冊:2004-03-19

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-04-19 08:48:54 IP:220.142.xxx.xxx 未訂閱
您好:這是執行碼    procedure TfmMain.Btn21Click(Sender: TObject); begin   if WinExec(''G:\Winprg\Sprg\HPS.exe "''+sUserID+''"'', SW_MAXIMIZE)<31 then //if WinExec('G:\Winprg\Sprg\HPS.exe sUserID sPassID sMastID sUserName', SW_MAXIMIZE)<31 then // if WinExec(PChar(Cmds), SW_MAXIMIZE)<31 then begin MyWarning('找不到該程式、請聯絡資訊人員!'); abort; end else Application.Terminate; end; 這是錯誤訊息 [Error] Main.pas(185): Not enough actual parameters [Error] Main.pas(185): Illegal character in input file: '\' ($5C) [Error] Main.pas(185): Illegal character in input file: '"' ($22) [Hint] Main.pas(54): Private symbol 'ErrorProc' declared but never used [Fatal Error] Hp.dpr(16): Could not compile used unit 'Main.pas' 麻煩您
yachanga
資深會員


發表:24
回覆:335
積分:296
註冊:2003-09-27

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-04-19 09:25:49 IP:210.243.xxx.xxx 未訂閱
Hi yx_huang77: 以下為小弟建議: 1.第一個錯誤訊息是參數不足, 請確認HPS 此程式是否需要四個參數  G:\Winprg\Sprg\HPS.exe sUserID sPassID sMastID sUserName 2.如果參數有四個, 程式碼如下, 參數與參數間須有空格, 所以加上' ' 加油囉
系統時間:2024-05-02 19:33:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!