5

(.Net Framework)によって開始された ie で奇妙な動作が見つかりましたProcess.Start()。これを再現するには、次の手順に従ってください。

必須:

  • C# IDE+コンパイラ
  • Outlook (私の状況では: Outlook 2010 - 他のバージョンでも同じ問題が発生するはずですが、テストされていません)
  • ie9 (ie8 または 10 も「良い」はずです)
  • つまり、デフォルトのブラウザーでなければなりません (後で元に戻すことができます ;-) )
  • Outlook は mailto: リンクに関連している必要があります

手順 (成功):

  • すべての IE および Outlook インスタンスを閉じる
  • オープンIE(32ビット)
  • 開く URL:mailto:foo@example.com

結果: Outlook が起動します

手順 (失敗)

  • すべての IE および Outlook インスタンスを閉じる
  • このコードフラグメントをコンパイルします System.Diagnostics.Process.Start("http://www.example.org");
  • コードを実行します (IE はサンプル ページの表示を開始する必要があります)。
  • mailto:foo@example.comURLバーに入力またはコピーします

結果: Microsoft Outlook (またはそのようなもの) を起動できません - WTF?

私がすでにチェックしたこと:

IEは同じで始まります

  • パラメータ
  • 作業ディレクトリ
  • ユーザー
  • アーキテクチャ (32 ビット)

私は何を間違っていますか?私がチェック、テスト、探すことができるアイデアが他にもあればいいのですが。

4

1 に答える 1

0

動作を再現できます。私の場合、問題の原因となっている Outlook アドインがあります。

---------------------------
MS Outlook Extension
---------------------------
The <Outlook Addin Name> MS Outlook Extension can't be loaded because Outlook is currently in use by another application. Please try again later.
---------------------------
OK   
---------------------------

このアドインを削除すると、機能するようになりました。

これも役立つかもしれません: http://www.codeproject.com/Articles/4051/Windows-Impersonation-using-C

問題が私のようなアドインでない場合は、別のユーザーになりすますことが役立つ場合があります。

于 2013-02-07T22:24:58.320 に答える