2016-04-01 12 views
0

私は私がindex.htmlの中で使用できるクエリで渡すパラメータをローカルのWebページ(index.htmlを)を開きたいシナリオをしましたが、それは以下のとおりにエラーを与えるとして、私は問題を抱えている、vbでパラメータを使用してローカルWebページにアクセスするには?

指定されたファイルが見つかりません。

Vb.netコード

Dim url As String = ConfigurationManager.AppSettings("Url") 
url = url & "?id=" & txtFilePath.Text 

    //Url example 
"C:\Program Files\Products\Bella\index.html?id=232" 

Process.Start(url) 
+0

URLはあなたに何か価値を与えますか? – Mych

+0

"C:¥Program Files¥Products¥Bella¥index.html?id = 232"のようなものですが、クエリを削除するとデフォルトのブラウザが開きます。 – CodeBox

+0

ファイル送信:/// C:/ Program Files/Products/Bella/index.html?id = 232以上ファイル:/// C:/Program%20Files/Products/Bella/index.html%3Fid= 232。また、ファイルを確認してください:/// C:/ Program Files/Products/Bella/index.html?id = 232ブラウザに貼り付けただけで結果が得られます。 – Mych

答えて

0

私は完全にあなたの質問を理解していないが、私はしようとします。

「Url」の値は何かわかりませんが、txtFilePath.textの値はわかりません。 URLを

localhost/index.html?id=example 

のように開こうとすると、最初のパラメータとして使用する必要があります。

Process.Start("IExplore.exe", url) 

あなたがURLに入れたパラメータを読み込むためのサーバーを取得しようとしている場合は、HTMLページには、そのようなパラメータ、多分PHPまたは何か他のものを入手できる場合、私は知らないのですか?しかし、それはブラウザや物事を起動するためのものではありません。ただちにヘッドアップしてください。


しかし、ブラウザウィンドウで静的なhtmlファイルを開くだけなら、次のようになります。私が知っている限り、パラメータを渡すことで運が悪いですが、がファイルの存在をテストしなければならないので、そのパスに完全に存在することを確認してください。

File.Exists(url) 

EDIT:あなたのURL以来 は「C:?\プログラムファイル\製品\ベラ\ index.htmlのID = 232」私はそれを見つけるためにしようと考えて、あなたはパラメータを渡すことができ信じていません。拡張子が ".html?id = 232"のファイルで、明らかに存在しません。

0

二つの問題があるようだ。

まず:Mychがで述べたように(URLの前に:

私は、エラーの理由は、あなたが「//ファイルを」持っている必要があると思いますが、コメント)を使用してローカルWebページにアクセスします。多くのブラウザでは、ローカルファイルであることが指定されていない限り、自動的にURLに「http://」があると想定されます。

ブラウザによってはスラッシュを追加する場合がありますが、2つでProcess.Startに認識させるには十分です。

だからあなたのURLは次のようになります。

"file://C:\Program Files\Products\Bella\index.html?id=232" 

第二:

限り(jakobSが示唆したように)あなたが持っているでしょうURLに私が見つけた最良の方法を、パラメータを渡すなど使用する:

Process.Start("IExplore.exe", url) 
'or 
Process.Start("Chrome.exe", url) 

または任意のブラウザを使用します。

だから、あなたのコードをこのように修正することができます:

Dim url As String = ConfigurationManager.AppSettings("Url") 
url = url & "?id=" & txtFilePath.Text 

'Add "file://" to the beginning of the url. 
url = "file://" & url 

Process.Start("IExplore.exe", url) 

あなたのエラーを取り除くと、あなたのパラメータを指定してページをロードする必要があります。

希望すると助かります!

関連する問題