none
ClickOnce 用必須コンポーネントのフォルダ名は設定できますか? RRS feed

  • 質問

  • ClickOnce 時の必須コンポーネントで、SQL Server 2005 Express Edition を
    「アプリケーションと同じ場所から必須コンポーネントをダウンロードする」
    としても、期待通りにならないので、手作業で以下の準備をしました。


    (1) まず、ファイルを揃える。sqlexpr32_jpn.exe を sqlexpr32.exe に改名してます。


    Code Snippet

    C:/Program Files/Microsoft SDKs/Windows/v6.0A/Bootstrapper/Packages/SqlExpress/ja

     

    - SQLEXPR32.EXE (sqlexpr32_jpn.exe)
    - SqlExpressChk.exe
    - eula.txt
    - package.xml
    - product.xml

     


    (2) product.xml 内 タグの Express.1.0 を Express.9.2 に変更

     

    Code Snippet

    <?xml version="1.0" encoding="utf-8"?>
    <Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="Microsoft.Sql.Server.Express.9.2">
      <RelatedProducts>
        <DependsOnProduct Code="Microsoft.Net.Framework.2.0" />
        <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
        <IncludesProduct Code="Microsoft.Sql.Server.Express.9.2" />
      </RelatedProducts>
      <PackageFiles>
        <PackageFile Name="SqlExpressChk.exe" />
      </PackageFiles>
      <InstallChecks>
        <ExternalCheck Property="SQLExpressInstalled" PackageFile="SqlExpressChk.exe" />
      </InstallChecks>
    </Product>

     

    参考

    - Deploying SQL Server 2005


    (3) 以上で発行させると、出力先に "sqlexpress" と全て小文字で出力されます。


    このままインストーラを実行させるとエラーが出ます。


    というのも、私は apache 上に置いているので、インストーラから URL の一部
    として "SqlExpress/sqlexpr32.exe" という名前で呼ばれても、SqlExpress の
    部分が上記の通り小文字なので、見つけられない、とエラーを出してしまいま
    す。IIS では大文字小文字関係ないのかな?


    sqlexpress を SqlExpress と書き換えて配置すると、ダウンロードが開始され、
    インストール作業も行われます。

     

     

     

    ここで質問です。


    必須コンポーネントを収めたフォルダ名を設定ファイルなどで編集できるので
    しょうか? 上記の例であれば、あらかじめ SqlExpress と正確に記すように。


    何処にもそんな設定部分が見当たらないのです。勝手に IDE がやっているよう
    な感じです。

    2008年2月5日 3:46