1
私は誤ったパッケージを実行している間に、SQLプロファイラを使用してトレースするガベージ文字のエラーが表示されます。私のコードはWix MSIインストーラはSQLスクリプトにガベージ文字を入れます
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"
xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util"
xmlns:sql="http://wixtoolset.org/schemas/v4/wxs/sql"
>
<Product Id="*" Name="GAT.DATAC.Deployment.Database" Language="1033" Version="1.0.0.0" Manufacturer="Gat" UpgradeCode="f5e8f09a-7df7-4699-9670-65f9f4003c58">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<!--<util:User Id="SQLUser" Name="test" Password="ba" />-->
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id='ProgramFilesFolder' Name='PFiles'>
<Directory Id='InstallDir' Name='Acme'>
<Component Id='SqlComponent' Guid='8A1C82DB-1DD3-4FB5-8600-4F370FE1E04B' KeyPath='yes'>
<sql:SqlDatabase Id="SqlDatabase" Database="dbGATAC" Server="PC4" CreateOnInstall="yes" DropOnUninstall="yes" ContinueOnError="no">
<!--User="SQLUserSA"-->
<sql:SqlScript Id='CreateTable' BinaryKey='CreateTablesBin' ExecuteOnInstall='yes' />
</sql:SqlDatabase>
<!--<sql:SqlScript Id="CreateTables" ExecuteOnInstall="yes" SqlDb="SqlDatabase.IntegratedAuthentication" ExecuteOnUninstall="no" BinaryKey="CreateTablesBin" ContinueOnError="no" />-->
<CreateFolder/>
</Component>
</Directory>
</Directory>
</Directory>
<Binary Id='CreateTablesBin' SourceFile='DatabaseSchema\SqlCreateDb.sql' />
<Feature Id='SqlFeature' Title='SqlFeature' Level='1'>
<ComponentRef Id='SqlComponent' />
</Feature>
</Product>
</Wix>
and while I run it display following script for execution in profiler
exec CREATE TABLE [dbo].[Widgets] (
[Id] [uniqueidentifier] NOT NULL,
[Configuration] [nvarchar](max) NOT NULL,
[Dashboard_Id] [uniqueidentifier],
CONSTRAINT [PK_dbo.Widgets] PRIMARY KEY ([Id])
)
今私»¿のWiXインストーラによって挿入し、実行するために私のスクリプトを制限され、次のされて、この問題を解決する方法。
ちょうどあなたがWIX(v4.x)の "nightly build"リリースを使用しているように見えますか?それは意図的に、または間違ってですか?誤って最新の安定版(3.10.2) – Nikolay
をお試しいただきありがとうございます。私はこの問題を解決しました。私はこのファイルを署名なしでutf-8として保存する必要があり、動作します。なぜ最新バージョンを使用したのですか –
さて、UTF-8 BOMマーカーでした。問題が解決したことを確認してください。 – Nikolay