停止/启动后,URI的注册已存在

本文关键字:注册 存在 URI 启动 停止 | 更新日期: 2023-09-27 17:58:06

我目前正在开发一个应用程序,在该应用程序中我将创建一个ServiceHost,然后将其移除,然后稍后重新创建。问题是,当我尝试重新创建服务主机时,一旦我去掉了它,我就会得到一个异常"停止/启动后URI的注册已经存在。"奇怪的是,我有三个独立的主机,一个有效,两个无效。我认为有些事情没有得到妥善处理,但我不知道为什么。

我正在创建像这样的主机

host = new ServiceHost(typeof(MyService));
host.Open();

然后像一样除掉他们

if (host != null)
{
    host.Close();
    host = null;
}

我也尝试过中止而不是在没有任何运气的情况下关闭。

停止/启动后,URI的注册已存在

虽然我不确定确切的问题,但我可以给你一些思考和解决方法。

如果你在Windows7中工作,你作为主机的一部分创建的任何URL都必须注册。Netsh命令通常帮助我们注册和注销URL。

对于注册和注销URI,您都需要具有管理员权限。

您可以尝试以下操作。

  1. 如果您正在运行exe,请尝试在管理员模式下运行它。(右键单击并选择管理模式)。

  2. 如果您正在试用visual studio,请尝试在管理模式下重新启动visual studio并运行应用程序。

  3. 请尝试注销URI,然后使用Netsh重试。

http://saravananarumugam.wordpress.com/2011/03/01/http-could-not-register-url/

可能对你有帮助。