2

データを取得するためのライブラリであるWCFサービスを使用してソリューションVS2010C#を作成しました。このサービスは、ソリューションのコンソールアプリケーションで正常に機能しています。問題ない。

古いプロジェクトのVS2008プロジェクト(そしておそらく後でVS2005)でそれを使用する必要があります。次に、VS2010を起動して、「WCFテストクライアント」を取得します。現時点でVS2008で、ローカルマシンに「Web参照を追加」しようとしました...結果がありません。

次に、Vs2010を使用してコンソールアプリケーションを作成してホストしようとしました。これを実行しました。

Uri baseAddress = new Uri("http://localhost:8080/hello");
using (ServiceHost host = new ServiceHost(typeof(SecurityAccessWCF.WCFSecurityService), baseAddress))
{
    // Enable metadata publishing.
    ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
    smb.HttpGetEnabled = true;
    smb.MetadataExporter.PolicyVersion = PolicyVersion.Policy15;
    host.Description.Behaviors.Add(smb);

    host.Open();

    Console.WriteLine("The service is ready at {0}", baseAddress);
    Console.WriteLine("Press <Enter> to stop the service.");
    Console.ReadLine();

    // Close the ServiceHost.
    host.Close();
}

でエラーが発生しOpen()ます。「AddressAccessDeniedException-HTTPはURLを登録できませんでした...プロセスにアクセス権がありません」(提供されたリンクが明確ではありません。ローカル管理者としてWin7 x64を使用しており、ドメイン)

ここに画像の説明を入力してください

4

2 に答える 2

5

Shift+ Mouse Right ClickVisual Studio ショートカットで、[管理者として実行] を選択します。

この方法でホストできるはずです。

または、プロジェクトをビルドし、結果のコンソール アプリケーションを管理者アカウントで同じ方法で実行することもできます。

于 2011-08-01T16:00:14.367 に答える
4

これは、アプリケーションがドメインを登録できないことを意味する標準エラーです。通常、これは vista/windows 7 のセキュリティの問題です。管理者としてログインして実行netsh http add urlacl url=http://+:80/Localhost user=DOMAIN\user

詳細については、 msdnの記事を参照してください。

于 2011-08-01T12:49:53.107 に答える