我正在創建一個也使用Kinect 2的WPF應用程序。現在是發佈我的應用程序的時候了,我想創建一個獨特的安裝文件來安裝應用程序和Kinect SDK 。我有Kinect.exe,我想將它包含在我用Visual Studio中的發佈選項創建的標準設置中(順便說一下,我使用的是Visual Studio 2017)。 閱讀一些內容我發現正確的方法可能是將Kinect SDK插入到我的應用程序的先決條件中。對? 因此我想添加的文件,以下指南:在部署wpf應用程序時包含.exe文件
How to: Create a Package Manifest
How to: Create a Product Manifest
我在C創建的文件夾:\ Program Files文件(x86)的\微軟的Visual Studio 14.0 \ SDK \引導程序\軟件包,我已經加入產品XML文件:
<?xml version="1.0" encoding="utf-8" ?>
<Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
ProductCode="Custom.Bootstrapper.Package">
<PackageFiles>
<PackageFile Name="KinectRuntime-v2.0_1409-Setup.exe"/>
</PackageFiles>
<Commands>
<Command PackageFile="KinectRuntime-v2.0_1409-Setup.exe" Arguments="">
<InstallConditions>
<BypassIf Property="IsMsiInstalled"
Compare="ValueGreaterThan" Value="0"/>
<FailIf Property="AdminUser"
Compare="ValueNotEqualTo" Value="True"
String="NotAnAdmin"/>
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="Success"/>
<ExitCode Value="1641" Result="SuccessReboot"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<DefaultExitCode Result="Fail" String="GeneralFailure"/>
</ExitCodes>
</Command>
然後在一個叫子「恩。」我補充包XML文件:
<Package xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
Name="DisplayName"
Culture="Culture"
LicenseAgreement="SDKEula.rtf">
<PackageFiles>
<PackageFile Name="SDKEula.rtf"/>
</PackageFiles>
<!-- Defines a localizable string table for error messages. -->
<Strings>
<String Name="DisplayName">Update Consent Dialog</String>
<String Name="Culture">en</String>
<String Name="AU_Unaccepted">The automatic update agreement is not accepted.
</String>
<String Name="GeneralFailure">A failure occurred attempting to launch the setup.</String>
</Strings>
</Package>`
我還添加了RTF文件。所以對我來說應該幾乎沒問題。但是當我回到VS時,我在先決條件列表中看不到這個新軟件包。 你能幫我添加Kinect SDK安裝程序嗎? 非常感謝, 亞歷克斯
解決。我認爲該文件夾是正確的,但看看關鍵GenericBootstrapper我發現軟件包的路徑是C:\ Program Files文件(x86)\ Microsoft SDKs \ ClickOnce引導程序\。在文件夾中添加帶有產品和軟件包xml的新軟件包我能夠在必備軟件中看到Kinect Installer。發佈應用程序一切正常 –