0

私はしばらくこれをやろうとしてきましたが、方法がわかりません。外部の .prg ファイルから別の .prg へのプロシージャを呼び出したいです。

だから、そのために、私は:

SET PROCEDURE TO cenas2.prg Additive \\ cenas2.prg is the filename with the procedure called myproc inside
Do myproc

私の問題は、実行するとエラーが発生することです。ファイル「cenas2.prg」が存在しません。

だから、私は次のコードを実行しました:

WAIT WINDOW 'Path: ' + SET('PATH') + CHR(13)+CHR(10) + 'Default drive: ' + SET('Default') + CHR(13)+CHR(10) + 'Current directory: ' + CURDIR()

そして、私は得ました:

道 :

デフォルト ドライブ C:

現在のディレクトリ: \PHC20CRP\

cenas2.prg は PHC20CRP 内にあり、file("cenas2.prg") を実行すると true が返されるため、プロシージャを設定しようとしたときにファイルが存在しないと返すのは意味がないと思います。誰でも私を助けることができますか??

ありがとう

4

3 に答える 3

0

これを聞かせてください。あなたの cenas2.prg は SINGLE ROUTINE ですか?? 多くのプロシージャと関数を含むプログラム ファイルではありません。その場合、SET PROCEDURE TO は必要ありません。プロジェクトの一部として持つだけで、直接呼び出すことができます。

通常、「SET PROCEDURE」ファイルは単一の .prg ファイル内の一連のルーチンであるため、開発フォルダーを肥大化させる数十または数百の一般的なルーチンはありません。

*/ This is MyProcedureFile.prg
function oneFunc()
...
endfunc

procedure someOtherProc()
...
endproc

function specialTest()
...
endfunc

*/ End of this complete .prg

それならあなたは持っているでしょう

手順を MyProcedureFile 添加剤に設定します

そして、すべての機能がアプリケーションに表示されます。.prg ファイルが独自の唯一のルーチンである場合、SET PROCEDURE TO は必要ありません。

于 2016-12-06T11:46:26.193 に答える
0

すでに問題を発見しています。プロシージャ内でパラメータを強制する必要があったため、そうしないと実行されませんでした。ご助力いただきありがとうございます!

于 2016-11-29T19:01:51.360 に答える