2012-05-07 21 views
4

私はWebBrowser要素を含むアプリケーションを作成しており、そのユーザーのデフォルトブラウザのユーザーエージェントをアプリケーションに表示させたいと考えています。ユーザーのデフォルトブラウザ用のUserAgentを取得

私は、レジストリキーを使ってデフォルトのブラウザを取得する方法と、ブラウザ用にユーザーエージェントを取得する方法を知っていますが、2つを組み合わせる方法を理解することはできません。これは可能ですか?

+1

ウェブブラウザが何かをそのUserAgentに入れることができることを考慮すると(例えば、現在の時間)、私はあなたが実際にそれを確実に行うためにブラウザを起動する必要があると思います。問題は、なぜこれを知りたいのですか? – svick

+0

私は、アプリケーションがユーザーのデフォルトブラウザを模倣しようとしています。 –

+2

そして、なぜそれをしたいのですか?通常、これを行うのは良い考えではありません。 – svick

答えて

0

(もちろん、これはここでやり過ぎのビットである)私はどうなるのか

string strUserAgent = Request.UserAgent.ToString().ToLower(); 
bool status = false; 
if (strUserAgent != null) 
{ 
    if (Request.Browser.IsMobileDevice == true || 
     strUserAgent.Contains("iphone") || 
     strUserAgent.Contains("blackberry") || 
     strUserAgent.Contains("mobile") || 
     strUserAgent.Contains("windows ce") || 
     strUserAgent.Contains("opera mini") || 
     strUserAgent.Contains("palm")) 
    { 
     status = true; 
    } 
} 
+2

それはまったく尋ねられることではありません。 – svick

1

(これはブラウザがハンドヘルドデバイスであるかどうかを確認する簡単な関数である)、これを試してみてくださいは含めることですこのWebサーバーからURLを要求して、ユーザーエージェントを取得します。

I.e.おおよそこれには以下が含まれます:

  1. アプリケーション内にWebサーバーを実装します。 this one
  2. WebBrowser制御におけるエンドユーザー(例えば、この変数を表示する変数
  3. にユーザーエージェントを保存し、Webサーバの要求ハンドラで
  4. (例えばhttp://127.0.0.1:48384/test)WebサーバのローカルURLを呼ぶことにしましょうあなたのWinFormアプリ上、または単にバックWebサーバからの応答を送信することにより、Labelコントロール。

私は自分のアプリケーション内で複数回Webサーバを成功裏に使用しました。その一例でしょう私のHTML edit controlによってコードプロジェクトでオーバー。

+1

申し訳ありませんが、私はこれがどのようにデフォルトブラウザのユーザーエージェントを取得するのか分かりません。これは、私が設定した値であるWebブラウザのユーザエージェントを返さないでしょうか? –

+0

はい、これは 'WebBrowser'コントロールを返します。結局のところ、あなたは 'WebBrowser'コントロールについて言及して以来、私はこのユーザエージェントを取得したいと読んでいます。 –

+0

「Webブラウザ」についてのあなたの言及は、あなたが言及している「デフォルトブラウザ」に関連していますか? –

関連する問題