• 締切済み

VBでFORTRANの制御ができない

Visual Basic(2003)でFORTRANの実行ファイルを制御したいと考えております. しかし,ただ実行するだけならできたのですが,FORTRANにおいてOPEN文を用いると,制御ができなくなります. 具体的には,実行ファイル単体を実行すると作成されるTextファイルが,VB上で実行すると作成されません. どなたか原因が分かる方がいらっしゃいましたら,教えてください.

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

Fortranで出力するファイルはフルパスで指定されているのでしょうか 単に "c:test.dat"などで指定されているのであれば本来出力するフォルダーとは別の場所になる可能性がありますよ たとえば 単体実行時には C;\Fortran\Project\Test00がカレントフォルダ VB2003から実行した場合 C:\VB2003\TestFortran\bin\Release がカレントフォルダ Fortranプログラムが ファイル"Test00.dat"へ出力といった指示だった場合 ドライブ指定やパスの指示が無いなら カレントフォルダに出力されると思います この辺りを検証してみましょう または Fortran側のソースを公開してみるとか ・・・

kirita0115
質問者

補足

返答ありがとうございます。 カレントディレクトリも気をつけてやってみたのですが、まだできませんでした。 最初はVBおよびFORTRANともに複雑なものを用意してやっていたのですが、なかなかうまくいかないので、今は極シンプルなプログラムを作って試しています。 FORTRAN側は ====================== program test open(100,file="test.dat") do i=1,10 write(100,*) sin(i) end do end program test ====================== VB側は、FORTRANをデバックして作成されたexeファイルを下記のようにただ実行するだけのソースを作っています。 ====================== Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click  Process1.StartInfo.FileName =("F:\workplace\Dyansty\Analysis\test.exe")  Process1.Start() End Sub ====================== これで実行するとプログラムが終了しても、本来作成されるべき"test.dat"がどこにも作成されません。 このときOPEN文の方を"F:\workplace\Dyansty\Analysis\test.dat"とフルパスで指定してもダメでした。 ちなみにFORTRANはDeveloper Studioを使っています。 わかりにくいかと思いますが、教えてください。

関連するQ&A

専門家に質問してみよう