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

わんくま同盟

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

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

ツリー一括表示

実行ファイルでリソースが利用できない /じょこびっち (19/11/02(Sat) 10:45) #92847
Re[1]: 実行ファイルでリソースが利用できない /Azulean (19/11/02(Sat) 18:23) #92850
  └ Re[2]: 実行ファイルでリソースが利用できない /じょこびっち (19/11/05(Tue) 08:53) #92880


親記事 / ▼[ 92850 ]
■92847 / 親階層)  実行ファイルでリソースが利用できない
□投稿者/ じょこびっち (18回)-(2019/11/02(Sat) 10:45:02)

分類:[C#] 

2019/11/02(Sat) 10:45:56 編集(投稿者)

ビルドしてexeファイルを初めて作りました。
しかし、開発環境とは別のパソコンで実行するとフォーム自体は起動するのですが外部機器と通信をすると「No valid COM I/O resource available, set the IO property to a valid COM I/O resource.」とメッセージが発生します。通信以外の機能は使えています。
素人考えですが恐らくリソースが利用できないためにWriteStringメソッドが使えず、コマンドが遅れないのだと思っています。
実行ファイルはDebagフォルダではなくReleaseフォルダ内のexeです。
後から追加したライブラリを使用する場合にはビルドする時にソリューションのプロパティか何かで設定が必要なのでしょうか?
それともコード内に何か記述が必要なのでしょうか?
開発環境では普通に動作しておりました。

開発環境:
Windows10 64bit
Visual Studio Express 2017

実行OS:
Windows7 32bit

外部機器用のライブラリ
VISA COM

public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
ResourceManager rm = new ResourceManager(); // VISA COM リソースマネージャ
FormattedIO488 inst = new FormattedIO488(); // VISA COM フォーマッテッドIO

// *********************
// 測定機器に接続
// *********************
private void BtnID_Click(object sender, EventArgs e)
{
try
{
// 通信開始
inst.IO = rm.Open(VISAアドレス) as IMessage;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}

try
{
// 測定器のID確認
inst.WriteString("*IDN?"); // IDクエリ
String str = inst.ReadString(); // コマンド受信
MessageBox.Show(str);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}

それとビルド後から
1.開発環境でデバッグを開始するとプロンプトが立ち上がるようになりました。
これはこういうものなのですか?コマンドラインで何か走ってるわけでもないので気になります。
2.デバッグを開始するたびに「マイコードのみをなんちゃらかんちゃら」とメッセージが表示されるようになりました。

ここら辺も何か関係しているのでしょうか?こちらは別の問題と考えればいいのでしょうか?
よろしくお願いします。
[ □ Tree ] 返信 編集キー/

▲[ 92847 ] / ▼[ 92880 ]
■92850 / 1階層)  Re[1]: 実行ファイルでリソースが利用できない
□投稿者/ Azulean (1093回)-(2019/11/02(Sat) 18:23:12)
No92847 (じょこびっち さん) に返信
> 素人考えですが恐らくリソースが利用できないためにWriteStringメソッドが使えず、コマンドが遅れないのだと思っています。
> 実行ファイルはDebagフォルダではなくReleaseフォルダ内のexeです。
> 後から追加したライブラリを使用する場合にはビルドする時にソリューションのプロパティか何かで設定が必要なのでしょうか?

ライブラリの取説、マニュアルを読んで解決するべきところだと思っています。
同じライブラリ、または類似のライブラリを使ったことがある人にしか答えられない領域なので…。

ライブラリに COM ポート番号を指定できるような仕組みがあるのなら、利用環境の COM ポート番号に応じて設定するコードを書かないといけないかも?


> それとビルド後から
> 1.開発環境でデバッグを開始するとプロンプトが立ち上がるようになりました。
> これはこういうものなのですか?コマンドラインで何か走ってるわけでもないので気になります。

プロパティを何か変えてしまったのでは?
プロジェクトのプロパティで「コンソール」になってしまっているところがありませんか?


> 2.デバッグを開始するたびに「マイコードのみをなんちゃらかんちゃら」とメッセージが表示されるようになりました。

構成が「Release」になってしまっているとか?
これも何かいろいろと触ってしまったのでは?と思いますが…。
[ 親 92847 / □ Tree ] 返信 編集キー/

▲[ 92850 ] / 返信無し
■92880 / 2階層)  Re[2]: 実行ファイルでリソースが利用できない
□投稿者/ じょこびっち (19回)-(2019/11/05(Tue) 08:53:13)
No92850 (Azulean さん) に返信
> ■No92847 (じょこびっち さん) に返信
>>それとビルド後から
>>1.開発環境でデバッグを開始するとプロンプトが立ち上がるようになりました。
>>これはこういうものなのですか?コマンドラインで何か走ってるわけでもないので気になります。
>
> プロパティを何か変えてしまったのでは?
> プロジェクトのプロパティで「コンソール」になってしまっているところがありませんか?

ソリューションのプロパティで出力の種類を「Windowsアプリケーション」にしてビルドしたらコンソールが立ち上がらない実行ファイルが出来ました。

>>2.デバッグを開始するたびに「マイコードのみをなんちゃらかんちゃら」とメッセージが表示されるようになりました。
>
> 構成が「Release」になってしまっているとか?
> これも何かいろいろと触ってしまったのでは?と思いますが…。

「ツール」⇒「オプション」⇒「デバッグ」⇒「全般」の中に「マイコードのみを有効にする」とあったのでチェックしたら表示は消えました。表示が消えただけなので解決したかどうかわかりませんが。
[ 親 92847 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -