Wix 部署:WinForms 报告
Wix deployment: WinForms Report
我正在尝试使用 WIX 部署一个 winforms 应用程序来创建 .exe。
我能够创建 .exe 并安装我的应用程序。
但我无法打印报告 - 没有报告预览,应用程序只打印我的报告。当我尝试时出现错误:
Object reference not set to an instance of an object
在以下行中:
LocalReport localReport = new LocalReport();
当我 运行 我的应用程序在 VS2013 上工作正常,但部署的应用程序不工作(同一台机器)。
我有一个 Bundle.wxs:
<PackageGroup Id="ReportViewer">
<MsiPackage Id="ReportViewer"
SourceFile="Files\ReportViewer.msi"
Cache="no"
Compressed="yes"
Permanent="yes"
Vital="yes"
InstallCondition="VersionNT >= v5.1 AND NOT ReportViewer10Install = 1"/>
</PackageGroup>
和一个Product.wxs
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.Common.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.WinForms.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Reports\MyReport.rdlc" KeyPath="yes" />
</Component>
Microsoft.ReportViewer.WinForms.dll 和 Microsoft.ReportViewer.Common.dll 被标记为 "Copy local"。
有人能帮帮我吗?
事实证明,不是 LocalReport 为 null。
问题出在报告路径上,它是空的。所以我修复了它,它现在运行正常了。
我想也没有必要添加这行:
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.Common.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.WinForms.dll" KeyPath="yes" />
</Component>
我正在尝试使用 WIX 部署一个 winforms 应用程序来创建 .exe。 我能够创建 .exe 并安装我的应用程序。 但我无法打印报告 - 没有报告预览,应用程序只打印我的报告。当我尝试时出现错误:
Object reference not set to an instance of an object
在以下行中:
LocalReport localReport = new LocalReport();
当我 运行 我的应用程序在 VS2013 上工作正常,但部署的应用程序不工作(同一台机器)。
我有一个 Bundle.wxs:
<PackageGroup Id="ReportViewer">
<MsiPackage Id="ReportViewer"
SourceFile="Files\ReportViewer.msi"
Cache="no"
Compressed="yes"
Permanent="yes"
Vital="yes"
InstallCondition="VersionNT >= v5.1 AND NOT ReportViewer10Install = 1"/>
</PackageGroup>
和一个Product.wxs
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.Common.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.WinForms.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Reports\MyReport.rdlc" KeyPath="yes" />
</Component>
Microsoft.ReportViewer.WinForms.dll 和 Microsoft.ReportViewer.Common.dll 被标记为 "Copy local"。
有人能帮帮我吗?
事实证明,不是 LocalReport 为 null。 问题出在报告路径上,它是空的。所以我修复了它,它现在运行正常了。
我想也没有必要添加这行:
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.Common.dll" KeyPath="yes" />
</Component>
<Component Guid="xxx">
<File Source="$(var.Forms.TargetDir)\Microsoft.ReportViewer.WinForms.dll" KeyPath="yes" />
</Component>