4

同じマシンで Windows 7 Ultimate x86 と IIS 7 を使用しています。VS 2010 を使用して、この IIS 7 に Silverlight アプリケーションを "Web デプロイ" したいと考えています。

VS 2010 での Web 配置タスクが機能するように、管理サービス (WMSVC) と Web 配置サービス (MsDepSvc) を構成する必要があることはわかっています。

IIS 7 管理 UI (inetmgr.exe) を調べたところ、これを行うための "管理サービス" というエントリが見つかりません。

これを行うための多くのチュートリアルを見つけることができましたが、すべて Windows Server 2008 と IIS 7 に関するものです。

だから私の2つの質問は次のとおりです。

1.) IIS 7 UI で「管理サービス」UI エントリを有効にする方法はありますか?

2.) そうでない場合、これを行うための UI を備えた代替ツールはありますか?

明確でない場合、私が話していることは - ここにチュートリアルへのリンクがあります。ここでは、UI エントリ「管理サービス」が IIS 7 に表示されます。

iis-7-リモート管理

コメントしてくださってありがとうございます。

この問題がここでも議論されていることがわかりました:

管理サービス委任アイコンがありません

提案された解決策 (Web デプロイのカスタム インストール、スクリプト) を試しましたが、何も機能しませんでした。

私はポイントを逃していますか?Web 配置 3.0 の msi にバグがあるはずです。

4

1 に答える 1

2

理由はまだわかりませんが、結局、VS 2010 の組み込みメソッド「Web Deploy」はうまくいきませんでし。私はあきらめて、アプリケーションを構築し、すべての関連データを IIS にコピーする独自のデプロイ バッチ スクリプトを作成しました。

同じ問題を抱えているすべての人のために、このバッチ スクリプトをここに公開したいと思います。このスクリプトを使用する前に、次の点に注意してください。

1.) Silverlight Web プロジェクトで参照されているすべての DLL に Local Copy = True を設定します。

2.) WCF RIA サービスごとに個別の *.svc ファイルが必要です。svc ファイルには、完全なサービスの名前空間と名前、およびサービスのインスタンス化に使用されるファクトリ クラスを含める必要があります。ファイルの内容は次のようになります。

<%@ServiceHost language="C#" Debug="true" Service="Fullnamespace.Servicename" Factory="System.ServiceModel.DomainServices.Hosting.DomainServiceHostFactory"%>

私の場合、すべての svc ファイルは ClientBin フォルダーにあります。自分で作成し、Local Copy = True に設定する必要があることに注意してください。また、SL クライアントで正しい svc ファイルを呼び出す必要があることにも注意してください。

それは次のようになります。

LoginContext _loginContext = new LoginContext(Globals.URI.getServiceUri("http://yourdomain/ClientBin/YourService.svc"));
LoadOperation<ServiceLog> _loadOperation = _loginContext.Load<ServiceLog>(_loginContext.LogInQuery(user.EMail, user.Passwort), LoginCallBack, true);

3.次のバッチ スクリプトは、アプリケーションをビルドします。次に、ファイルを IIS にコピーします。問題をデバッグするために、pdb ファイルは xap ファイルに含まれています。バッチ内のすべてのパスが私のシステムに関連していることに注意してください。あなたは確かにそれらを変更する必要があります。おそらく、これをインスピレーションとして、独自のスクリプトを作成することになるでしょう。

このスクリプトには細心の注意を払い、バッチ言語に慣れていない場合は使用しないでください。ハードドライブ上のフォルダを削除して作成します。自己責任

SET DestPath=D:\Sources Internet\www.MyDomain.de\%2
SET DevelopmentPath=D:\Sources\MyDomain\MyDomain.Web\%3

RD /S /Q "%DestPath%" 

MKDIR "%DestPath%"

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" "D:\Sources\MyDomain\MyDomain\MyDomain.sln" /p:Configuration=Debug;DeployOnBuild=true;DeployTarget=Package;_PackageTempDir="D:\Sources Internet\www.MyDomain.de"

DEL "%DestPath%\Web.config" /s /q

COPY "%DevelopmentPath%\Web.config" "%DestPath%\Web.config"

COPY "D:\Sources\MyDomain\MyDomain\Bin\Debug\MyDomain.pdb" "D:\Sources Internet\www.MyDomain.de\ClientBin\MyDomain.pdb"

CD /D D:\Sources Internet\www.MyDomain.de\ClientBin

REN *.xap *.rar

SET WINRAR="C:\Program Files\WinRAR"

%WINRAR%\WinRAR.exe a MyDomain MyDomain.pdb 

DEL MyDomain.pdb

REN *.rar *.xap

COPY "D:\Sources Internet\www.MyDomain.de\ClientBin\MyDomain.xap" "D:\Sources Internet\www.MyDomain.de\bin\MyDomain.xap"

このスクリプトには細心の注意を払い、バッチ言語に慣れていない場合は使用しないでください。ハードドライブ上のフォルダを削除して作成します。自己責任

この方法を使用すると、VS 2010 の Web デプロイは不要になり、IIS 7.5 で SL アプリケーションを実行およびデバッグすることもできます。

于 2013-01-22T10:33:45.567 に答える