データベース「FinishedOrders」のテーブルから単純に読み取り、結果をリスト ビューに表示する C# アプリケーションを開発しました。
そして基本的に問題は次のとおりです。
ラップトップ (アプリケーションの開発に使用したコンピューター) でアプリケーションをファイル サーバーから切り離して実行すると、正しく動作し、Finished Orders テーブルの値がリストに入力されます。
上司のコンピューターでまったく同じパスからまったく同じアプリケーションを実行すると、例外か何かをキャッチしたかのように、空のリスト ビューがポップアップ表示されます。
私が検討したこと:
- ロード ステートメント全体を try catch ブロックでラップし、エラー メッセージをメッセージ ボックスに出力しても、どちらのコンピューターでもエラーは表示されません。
- スタック パネルのリストを使用しており、各スタック パネルの最初の項目はイメージ コントロールです。image.source を次のように設定して
Type.Source = new BitmapImage(new Uri("/Control;component/images/42EF.png", UriKind.Relative));
います。これが問題の原因であるかどうかは完全にはわかりませんが、 uri を読み込めませんでした。表示されないだけでなく、try catch ブロック内でエラー メッセージがスローされませんか? - アプリケーションだけでなくソリューション全体をファイルサーバーにコピーして貼り付け、(両方のコンピューターの) デバッグフォルダーから実行しようとしました->同じ問題
- 接続文字列をマップされたドライブ "T:...." と "\Fileserver..." の両方に変更しようとしましたが、どちらも自分のコンピューターで動作します。データベースもファイルサーバー上にあります。
- どちらのコンピューターも Windows 7 を使用しています (私の上司はプレミアム エディションを持っていると思いますが、私はアルティメットを持っています)。
- 両方のコンピューターにアクセス権がインストールされており、まったく同じコンテキストで ole.db を使用する他のテスト済みの動作中の C# アプリケーションがあります。
これは私のコードです: http://pastebin.com/hm0BByDf