0

Labview で作成された DLL を介してシリアル ポートからデータを読み取る、Visual Basic で記述された実行可能ファイルがあります。その後、データはリアルタイムでグラフにプロットされます。

別のインストーラー パッケージを使用してソフトウェアを再インストールした後、シリアル ポートが読み取りまたは書き込みでハングしているように見えました。Portmon を起動し、ソフトウェアを再度実行しました。読み取りは正常に機能し、書き込みも成功したとラベル付けされましたが、グラフにはデータが表示されず、シリアル ポートに接続されたハードウェアがタイムアウト後に元の場所に正しく戻りませんでした。

この問題は、英語ではなくフランス語のシステム設定のコンピューターでのみ発生していたため、コンピューターの 1 つをコントロール パネルの [言語] 領域で英語のシステム設定に変更し、ソフトウェアを再インストールしました。出来た!これがなぜなのか誰か知っていますか?原因がフォーマット設定なのか、Unicode 以外のプログラム設定なのか、それとも単に Windows の言語と場所なのかを突き止めようとしています。labview ドライバーは言語間で異なりますか? フォーマットの設定により、データのプロット方法が変更され、エラーが発生していませんか? どんな提案でも大歓迎です。詳細については、Portmon または言語設定をテストする前に NI に投稿しました

4

2 に答える 2

0

ありがとう、ブラント!追加情報を追加したかっただけです:

古いインストーラーを使用してソフトウェアのさまざまな設定をテストしましたが、構成ファイルを変更して新しい実行可能ファイルをプルしました。私が気付いていなかったのは、古いインストーラーが各ユーザーの AppData/Roaming ファイルにインストールされていたことです。ユーザーに対して実行可能ファイルを実行しましたが、他のユーザーに対しては実行されませんでした。新しいインストーラー (実行可能ファイルを ProgramData に保存する) に戻し、すべての言語設定をカナダ フランス語に変更し、小数点記号を "," から "." に変更しました。現在、私のユーザー名で機能しており、他のユーザーでも機能するはずです。

インストールされたファイルが各ユーザーに指定されていない場合は、ProgramData にインストールすることを確認するもう 1 つの理由です。

于 2015-07-30T15:26:41.697 に答える