2016-10-25 12 views
1

Selenium C#でコードを書いていて、問題が発生しました。私はテストマシンにSeleniumをインストールし、Firefoxと連携させました。ブラウザが更新されたときに問題が発生しましたが、Selenium 3.0をインストールしたときに解決しました。私は私のFirefoxのバージョンが49.0.2であり、それは私に次のエラー投げている私の通常のマシン上でセレンをインストール:Selenium C#System.ComponentModel.Win32Exception 'System.dllでエラーが発生しました。エラー

を「型 『System.ComponentModel.Win32Exception』の未処理の例外は、System.dllの 追加で発生しました情報:指定された実行可能ファイルは、このOSプラットフォームの有効なアプリケーションではありません。

誰もこれまでに遭遇したことはありますか?マシンのオペレーティングシステムはどちらも同じです。私はおそらく何かを間違ってインストールしたのだろうかと思っています。ありがとう。

答えて

0

コメントにこれを追加する必要があります。しかし、それはそこに収まるとは思わない。

基本的に、win32例外はdotnetネイティブ例外の一部ではありません。しかし、dotnetはwin32Execptionを処理するメカニズムを提供します。 N個のWin32例外がありますが、特定のものがわからない限り、トラブルシューティングは非常に困難です。

以下に示すように、 "try .... catch"ステートメントをC#コードに追加します。 メッセージを印刷します。それは、あなたがメッセージを読むことができればその後、あなたが起こって/欠けているものを知っているだろうが間違っ

try { 

//YOUR CODE/BUSINESS 


    } 
    catch(Win32Exception w) 
{ 

      Console.WriteLine(w.Message); 
      Console.WriteLine(w.ErrorCode.ToString()); 
    } 

を何が起こっているかについてより多くの情報を提供します。

あなたのシステムに存在しない実行可能ファイルやライブラリから機能にアクセスしようとしているのは間違いです。

名前空間を追加:System.ComponentModel.Win32Exception(私はあなたがそれを知っていると思います)。

+0

お返事ありがとうございます。 Try Catchを追加しました。「指定された実行可能ファイルは、このOSプラットフォーム用の有効なアプリケーションではありません。コンソールに接続します。それ以外は、それほど私には分かりません。それが32対64ビットマシンと何か関係があるかどうかは分かりません。 – AndrewC10

+0

うーん..もう少しお試しください。これらの2行をcatchブロックに追加して、それがもっと役立っているかどうか確認してください。Exception e = w.GetBaseException(); Console.WriteLine(e.Message); – Naidu

関連する問題