VBで、C言語のプログラムを動かせるかについて

解決


みじょ  2002-01-21 18:07:02  No: 103965  IP: [192.*.*.*]

VBで、C言語のプログラムを動かせることができるのでしょうか?
もし方法や方法がのってるHPとか知っていましたら教えてください。

編集 削除
こころ  URL  2002-01-22 00:19:28  No: 103966  IP: [192.*.*.*]

基本的にはDLLを介して利用するのが一番でしょうか。
っていうか、インタプリタってことですか?
できるでしょうけど・・・大変そう。

編集 削除
みじょ  2002-01-22 20:40:40  No: 103967  IP: [192.*.*.*]

ShellをつかってCで書いたHelloWorldをVBで動かせるようになったのですがtxtファイルからよみとってやる場合うまくいきません。誰か教えてください。
Shell("C:HelloWorld.exe",1)は成功。
Shell("C:test.exe",1)は失敗。test.cは、三種類くらいのtxtから値をよみとって動いています。

編集 削除
こころ  URL  2002-01-23 01:05:00  No: 103968  IP: [192.*.*.*]

あぁ、プログラムを起動したいってことだったんですね。
指定しているパスは間違っていませんか?

> Shell("C:test.exe",1)は失敗。
> test.cは、三種類くらいのtxtから値をよみとって動いています。
この場合の失敗ってtest,exeを単独で動かした場合は
3種類のファイルから読みとった値を利用できているけど
VBから起動すると、立ち上がるけどテキストを
読みとれないってことでしょうか?

例えば、test.exeでfopen("test.txt", "rb");とか書いていると
text.exeを起動した時はtext.exeと同じフォルダにあるtext.txtを読みますが
Shellで起動した場合は起動元(つまり、VBのEXE)のフォルダに
test.exeがないと読みにいってくれません。

作業ディレクトリとかいうのが既存のフォルダになっているからですね。
CreateProcessとかだと指定できるんですが、Shellで指定できかなぁ・・・。

編集 削除
こころ  URL  2002-01-23 01:06:04  No: 103969  IP: [192.*.*.*]

訂正
> test.exeがないと読みにいってくれません。
test.txtの間違いです。

編集 削除
みじょ  2002-01-23 08:17:31  No: 103970  IP: [192.*.*.*]

無事成功しました。ありがとうございます。

編集 削除