1

VB.Net を介してシステムでアクセスした Web サイトの URL を取得したいと考えています。Windows の起動時に 1 つの exe がバックグラウンドで実行され、アクセスしたすべての Web サイトの URL が記録されます。

ユーザーが履歴をクリアしても、キャッシュにはすべての URL が必要です。ブラウザーが URL を要求した場合は、それを記録する必要があります。

私はこのコードで試します

Private Function RunScript(ByVal scriptText As String) As String

  Dim MyRunSpace As Runspace = RunspaceFactory.CreateRunspace()
  MyRunSpace.Open()
  Dim MyPipeline As Pipeline = MyRunSpace.CreatePipeline()
  MyPipeline.Commands.AddScript(scriptText)
  MyPipeline.Commands.Add("Out-String")
  Dim results As Collection(Of PSObject) = MyPipeline.Invoke()
  MyRunSpace.Close()
  Dim MyStringBuilder As New StringBuilder()
  For Each obj As PSObject In results
    MyStringBuilder.AppendLine(obj.ToString())
  Next
 Return MyStringBuilder.ToString()

End Function

そのscriptTextでは:-

"ipconfig /displaydns | select-string 'レコード名' | foreach-object { $_.ToString().Split(' ')[-1]}"

これはウェブサイトのURLを提供していますが、他にもたくさんのものがあります。Windows 7 でしか動作しないものもあります。

これを達成する方法は?

前もって感謝します。

4

1 に答える 1

1

ネットワークスニファーが必要だと思います。C# を使用して記述する方法の詳細については、この記事を参照してください。ここでいつでもC#to VB.Netconverterを使用してコードを変換できます。

于 2012-12-19T07:10:10.993 に答える