私は、ローカルマシンのポート8003でWCFサービスを開くWindowsサービスを作成しました。または、少なくとも、それはとされていますになります。サービスは、理由の有名な例外のため、起動できません。インストール済みのサービスでHTTP名前空間に権限を与える方法
System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:8003/TRConfigurationService/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details).
この問題は、非常に単純な答えで、here対処される:管理者モードでコマンドプロンプトを実行し、実行します。
netsh http add urlacl url=http://+:8003/ user=DOMAIN\UserName
非常にうまくいっていて、ローカルのマシンで手動で行うことができます。しかし、管理者モードで実行するように求められたら、「はい」をクリックする以外に何もする必要はありません(インストール後またはインストール中に一度だけ)。
PaulWHによれば、WCFサービスを昇格特権で稼動させることは、どうしたらいいのかの黄金の例です(http://blogs.msdn.com/b/paulwh/archive /2007/05/04/addressaccessdeniedexception-http-could-not-register-url-http-8080.aspx)。 –
私はこれがどのように使用されるのかという文脈が、これが良いか悪いかの答えになると思います。私は単体テストで使用するためにローカルのサービスホストをスピンアップしようとしています。このソリューションは、最も簡単で再利用可能なソリューションです。 – Adam