2016-12-14 9 views
0

Я просто добавил простой тест HTTPListener к моему приложению. Он отлично работает на Windows 10 x64, но отказывается запускаться на Server 2008 R2 Standard x64. Я запускаю его как Администратор (иначе я получаю «доступ запрещен»). Я проверил, что ничего не пытается привязать к тому же порту (я хотел бы получить другую ошибку):Операция HTTPListener не поддерживается на этой платформе

Imports System.Net 

Public Class Test 
    Public ReadOnly Property Address As String 
    Get 
     Return _Address 
    End Get 
    End Property 

    Public ReadOnly Property Port As Integer 
    Get 
     Return _Port 
    End Get 
    End Property 

    Private _Address As String 
    Private _Port As Integer 

    Private listener As HttpListener 
    Private listenerThread As Threading.Thread 

    Public Sub New(ByVal addr As String, ByVal p As Integer) 
    _Address = addr 
    _Port = p 
    End Sub 

    Public Sub Start() 
    listener = New HttpListener() 
    listener.Prefixes.Add("http://" & Address & ":" & Port & "/") 
    listenerThread = New Threading.Thread(AddressOf ListenerThreadSub) 
    listenerThread.Start() 
    End Sub 

    Public Sub ListenerThreadSub() 
    listener.Start() 
    While listener.IsListening 
     Dim response As HttpListenerResponse = Nothing 
     Try 
     Dim context As HttpListenerContext = listener.GetContext() 
     Dim path As String = context.Request.Url.LocalPath 
     response = context.Response 
     MsgBox(path) 
     Catch ex As Exception 

     End Try 
    End While 
    listenerThread.Abort() 
    End Sub 

    Public Sub Finish() 
    listener.Stop() 
    End Sub 

End Class 

Это моя тестовая кнопка:

Private Sub TestToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles TestToolStripMenuItem.Click 
    Dim TestService As Test = New Test("FQDNOFSERVER", PORT) 
    TestService.Start() 
End Sub 

Целевые рамки .NET 4.6.1 , но этот класс, как представляется, поддерживается с .NET 4. Свойство IsSupported имеет значение False.

ответ

0

Я установил его, установив драйвер «HTTP» в диспетчере устройств «Требование». «HTTP» (наряду с другими не-PnP) можно найти, перейдя в Просмотр> Показать скрытые устройства.

Я столкнулся с this article, что заставило меня задаться вопросом, включен ли драйвер HTTP.

 Смежные вопросы

  • Нет связанных вопросов^_^