C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[10]: VB.NETで他のEXEを実行時


(過去ログ 77 を表示中)

[トピック内 12 記事 (1 - 12 表示)]  << 0 >>

■45835 / inTopicNo.1)  VB.NETで他のEXEを実行時
  
□投稿者/ うさ (1回)-(2010/01/20(Wed) 18:55:35)

分類:[.NET 全般] 

開発環境:Visual Studio .NET2003

現在上記開発環境で開発を行っています。
ある画面から、XXX.EXEファイルを実行したく、
以下のように記述しています。

Dim process As New System.Diagnostics.Process
With process.StartInfo
.Arguments = ' コマンドライン引数
.FileName = ' 実行ファイル
End With
process.Start()

しかしながら、ローカル環境では処理がスルーしてしまい、
何事も無かったかのように終わってしまいます。
他のローカルPCの開発環境では実行できています。
開発環境を作成する際、何か不足しているのでしょうか?

おわかりの方がいらっしゃいましたら、お教え願います。
よろしくお願いいたします。

引用返信 編集キー/
■45837 / inTopicNo.2)  Re[1]: VB.NETで他のEXEを実行時
□投稿者/ Jitta on the way (511回)-(2010/01/20(Wed) 19:08:30)
No45835 (うさ さん) に返信
> 開発環境:Visual Studio .NET2003
>
> 現在上記開発環境で開発を行っています。
> ある画面から、XXX.EXEファイルを実行したく、
> 以下のように記述しています。
>
> Dim process As New System.Diagnostics.Process
> With process.StartInfo
> .Arguments = ' コマンドライン引数
> .FileName = ' 実行ファイル
> End With
> process.Start()
>
> しかしながら、ローカル環境では処理がスルーしてしまい、
> 何事も無かったかのように終わってしまいます。
> 他のローカルPCの開発環境では実行できています。

え〜っと、意味がわかりません(^-^;)
「私の PC では実行されないのに、他の人の PC では実行できる」ということでしょうか?

そういうことと仮定して進めます。

ひとつ思い当たるのは、FileName に指定しているファイルの、拡張子は何ですか?
また、ファイル名に空白が入っていませんか?

タスクモニターで見ても、新しいプロセスが起動している様子はないですか?CPU の使用率や、プロセス モニター(Sysinternal のツール)を利用することも検討してください。

他のアプリケーションに変えても、実行されないですか?



くらいかな?
引用返信 編集キー/
■45842 / inTopicNo.3)  Re[2]: VB.NETで他のEXEを実行時
□投稿者/ うさ (3回)-(2010/01/20(Wed) 19:23:11)
> え〜っと、意味がわかりません(^-^;)
> 「私の PC では実行されないのに、他の人の PC では実行できる」ということでしょうか?
そのようになってます。
すみません、説明不足で。。

> ひとつ思い当たるのは、FileName に指定しているファイルの、拡張子は何ですか?
拡張子はexeです。

> また、ファイル名に空白が入っていませんか?
ちゃんと確かめましたが、空白は入っていませんでした。。

> タスクモニターで見ても、新しいプロセスが起動している様子はないですか?CPU の使用率や、プロセス モニター(Sysinternal のツール)を利用することも検討してください。
>
> 他のアプリケーションに変えても、実行されないですか?
プロセス一覧にすらでてきません。
ただ、他のアプリケーション(EXE)を実行したら、実行されました。

今回呼び出しているEXEは、C##で作成された画面を、
EXEで作成し、.NETで呼び出しています。
もしかしたら、この辺りに問題があるのかと思っていますが、
他の人のPCでずっと実行できているので、
ファイル自体に問題はないと思います。

他にお心当たりは無いでしょうか?^^;
引用返信 編集キー/
■45844 / inTopicNo.4)  Re[3]: VB.NETで他のEXEを実行時
□投稿者/ 囚人 (456回)-(2010/01/20(Wed) 20:03:58)
パスが参照できてないんじゃないでしょうか。
絶対パスを指定してますか?
そうでないなら、実行できるマシンとできないマシンで PATH を比べてみてはどうでしょう。

引用返信 編集キー/
■45846 / inTopicNo.5)  Re[4]: VB.NETで他のEXEを実行時
□投稿者/ うさ (4回)-(2010/01/20(Wed) 20:21:04)
> パスが参照できてないんじゃないでしょうか。
> 絶対パスを指定してますか?
> そうでないなら、実行できるマシンとできないマシンで PATH を比べてみてはどうでしょう。

絶対パスにしてもだめでした。
C##側のEXEをローカルでデバックしたところ、
Debug Assertion Failedのエラーがでてしまいました。
もしかすると、EXEを実行できていないのではなく、
エラーにより終了してしまっている可能性がでてきました。
もう少し調べてみます。
引用返信 編集キー/
■45854 / inTopicNo.6)  Re[5]: VB.NETで他のEXEを実行時
□投稿者/ Jitta on the way (516回)-(2010/01/21(Thu) 07:38:40)
No45846 (うさ さん) に返信
>>パスが参照できてないんじゃないでしょうか。
>>絶対パスを指定してますか?
>>そうでないなら、実行できるマシンとできないマシンで PATH を比べてみてはどうでしょう。
>
> 絶対パスにしてもだめでした。
> C##側のEXEをローカルでデバックしたところ、

ちょっとごめん。

C## ?
C++ でなく?あるいは、C# ?
引用返信 編集キー/
■45861 / inTopicNo.7)  Re[6]: VB.NETで他のEXEを実行時
□投稿者/ うさ (5回)-(2010/01/21(Thu) 10:11:47)
> C## ?
> C++ でなく?あるいは、C# ?

失礼いたしました。
C++でした。
やはりデバッグしていると、”ASSERT(aaa->bbb);”と
記述しているところでエラーで落ちていました。
C++は初めてなので、原因がまだよくわかっていませんが。。
引用返信 編集キー/
■45862 / inTopicNo.8)  Re[7]: VB.NETで他のEXEを実行時
□投稿者/ みきぬ (724回)-(2010/01/21(Thu) 10:16:24)
> やはりデバッグしていると、”ASSERT(aaa->bbb);”と
> 記述しているところでエラーで落ちていました。
> C++は初めてなので、原因がまだよくわかっていませんが。。

状況がよく理解できていないんだけど、VB.NET で作ったプログラムを介さずに直接その C++ で作られた exe ファイルを実行しても、↓の状況になっているということ?

> しかしながら、ローカル環境では処理がスルーしてしまい、
> 何事も無かったかのように終わってしまいます。
> 他のローカルPCの開発環境では実行できています。

引用返信 編集キー/
■45863 / inTopicNo.9)  Re[8]: VB.NETで他のEXEを実行時
□投稿者/ うさ (6回)-(2010/01/21(Thu) 10:33:37)
> 状況がよく理解できていないんだけど、VB.NET で作ったプログラムを介さずに直接その C++ で作られた exe ファイルを実行しても、↓の状況になっているということ?
>
>>しかしながら、ローカル環境では処理がスルーしてしまい、
>>何事も無かったかのように終わってしまいます。
>>他のローカルPCの開発環境では実行できています。

はい、直接EXEを実行しても、上記のように処理がスルーしてしまっています。

C++とだけお伝えしましたが、実際は同じVisual Studioで、Visual C++で作成された画面の実行ファイル(EXE)を
VB.NETで呼び出しています。
私のローカルPCでは、Visual Studioを立ち上げて、Debugモードで実行すると
Assertionエラーで落ちてしまいますが、他のVisual StudioがインストールされているPCで
同じようにDebugモードで実行すると正常に画面が表示されます。

私のローカルPCでは何か不足しているような気がするのですが、
2台のPCを比べてみると、ほとんど違いはなく、
Visual Studio .NET 2003 MSDNライブラリがインストールされていないくらいです。
(あまり意味はないかもしれませんが。。)
引用返信 編集キー/
■45864 / inTopicNo.10)  Re[9]: VB.NETで他のEXEを実行時
□投稿者/ 774RR (459回)-(2010/01/21(Thu) 10:39:43)
assert っつのは「プログラムがバグっていること」の自己診断なので
assert するってことは要するにバグが検出されたということ。
デバッグするべし。

引用返信 編集キー/
■45865 / inTopicNo.11)  Re[9]: VB.NETで他のEXEを実行時
□投稿者/ .SHO (1151回)-(2010/01/21(Thu) 10:46:11)
No45863 (うさ さん) に返信

> はい、直接EXEを実行しても、上記のように処理がスルーしてしまっています。

だったら VB.NET で作ったプログラムからの起動とか関係ない。

> 私のローカルPCでは、Visual Studioを立ち上げて、Debugモードで実行すると
> Assertionエラーで落ちてしまいますが、他のVisual StudioがインストールされているPCで
> 同じようにDebugモードで実行すると正常に画面が表示されます。

Releaseモードにしたら、他のPCも落ちるんじゃない?

引用返信 編集キー/
■45911 / inTopicNo.12)  Re[10]: VB.NETで他のEXEを実行時
□投稿者/ うさ (7回)-(2010/01/21(Thu) 20:03:49)
無事解決しました。
原因はActiveXコントロールが
インストールされていないためでした。

ご返信いただいた方々、ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -