blob: f73a3d31e416cca52937104a2babbbd3a522d63d [file] [log] [blame]
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define EventSourceName = "chromoting" ?>
<?define ServiceName = "chromoting" ?>
<?ifdef OfficialBuild ?>
<?define ChromotingHost = "Chrome Remote Desktop Host" ?>
<?define FirewallName = "Chrome Remote Desktop Host" ?>
<?define Manufacturer = "Google Inc." ?>
<?else?>
<?define ChromotingHost = "Chromoting Host" ?>
<?define FirewallName = "Chromoting Host" ?>
<?define Manufacturer = "The Chromium Authors" ?>
<?endif?>
<?define OmahaAppid = "{b210701e-ffc4-49e3-932b-370728c72662}" ?>
<?define UpgradeCode = "2b21f767-e157-4fa6-963c-55834c1433a6" ?>
<?define ControllerAppid = "{4ff35d5e-d226-4550-9248-03e7779e67de}" ?>
<?define ControllerBinary = "remoting_host_controller.exe" ?>
<?define ControllerClass = "ElevatedController Class" ?>
<?define ControllerClsid = "{430a9403-8176-4733-afdc-0b325a8fda84}" ?>
<?define ControllerProgid =
"ChromotingElevatedController.ElevatedController" ?>
<?define ControllerTypelib = "{9d9a5a2c-576e-4acd-9c75-aabff74b205d}" ?>
<?ifndef FileSource ?>
<?error FileSource must be defined ?>
<?endif?>
<?ifndef SasDllPath ?>
<?error SasDllPath must be defined ?>
<?endif?>
<?ifndef Version ?>
<?error Version must be defined ?>
<?endif?>
<Product Id="*"
Language="1033"
Manufacturer="$(var.Manufacturer)"
Name="$(var.ChromotingHost)"
UpgradeCode="$(var.UpgradeCode)"
Version="$(var.Version)">
<Package Comments="$(var.ChromotingHost) Package"
Compressed="yes"
Description="$(var.ChromotingHost) Package"
InstallerVersion="200"
Manufacturer="$(var.Manufacturer)"/>
<MajorUpgrade
DowngradeErrorMessage="A later version of [ProductName] is already installed. Setup will now exit."
Schedule="afterInstallInitialize" />
<Media Id="1" Cabinet="chromoting.cab" EmbedCab="yes"/>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder" Name="PFiles">
<?ifdef OfficialBuild ?>
<Directory Id="google" Name="Google">
<Directory Id="chromoting" Name="Chrome Remote Desktop"/>
</Directory>
<?else?>
<Directory Id="chromoting" Name="Chromoting"/>
<?endif?>
</Directory>
</Directory>
<DirectoryRef Id="chromoting" FileSource="$(var.FileSource)">
<Component Id="sas.dll"
Guid="3c33dd97-3750-467f-8ec6-730611d346d4">
<File Id="sas.dll"
DiskId="1"
Name="sas.dll"
Source="$(var.SasDllPath)"
Vital="yes"/>
</Component>
<Component Id="remoting_service.exe"
Guid="23103839-bb02-4007-b149-998ddd8d7cba">
<File Id="remoting_service.exe"
DiskId="1"
KeyPath="yes"
Name="remoting_service.exe"
Vital="yes"/>
<ServiceInstall Id="install_service"
Type="ownProcess"
Vital="yes"
Name="$(var.ServiceName)"
DisplayName="@[chromoting]remoting_service.exe,-101"
Description="@[chromoting]remoting_service.exe,-102"
Arguments="--host-binary=&quot;[chromoting]remoting_me2me_host.exe&quot;"
Start="auto"
Account="LocalSystem"
ErrorControl="ignore"
Interactive="no" />
<ServiceControl Id="start_service"
Start="install"
Stop="both"
Remove="uninstall"
Name="$(var.ServiceName)"
Wait="yes" />
</Component>
<Component Id="remoting_me2me_host.exe"
Guid="0e1889af-f3f8-45a2-b2d0-c719d53c4474">
<File Id="remoting_me2me_host.exe"
DiskId="1"
Name="remoting_me2me_host.exe"
Vital="yes"/>
<util:EventSource xmlns:util="http://schemas.microsoft.com/wix/UtilExtension"
Name="$(var.EventSourceName)"
Log="Application"
CategoryCount="1"
CategoryMessageFile="[chromoting]remoting_me2me_host.exe"
EventMessageFile="[chromoting]remoting_me2me_host.exe"
SupportsErrors="yes"
SupportsInformationals="yes"/>
<fire:FirewallException xmlns:fire="http://schemas.microsoft.com/wix/FirewallExtension"
Id="me2me_firewall_exception"
IgnoreFailure="no"
Name="$(var.FirewallName)"
Profile="all"
Program="[#remoting_me2me_host.exe]"
Scope="any" />
</Component>
<Component Id="omaha_registration"
Guid="9a14673d-9518-4cf3-b737-52f09f02a10b">
<RegistryKey Id="omaha_client_key"
Root="HKLM"
Key="SOFTWARE\Google\Update\Clients\$(var.OmahaAppid)"
Action="create">
<RegistryValue Type="string"
Name="pv"
Value="$(var.Version)"/>
<RegistryValue Type="string"
Name="name"
Value="$(var.ChromotingHost)"/>
</RegistryKey>
</Component>
<Component Id="service_controller"
Guid="a559f5ba-4b11-4a6e-a1e9-70d9166cb8fc">
<File Id="$(var.ControllerBinary)"
DiskId="1"
Name="$(var.ControllerBinary)"
Vital="yes"/>
<RegistryKey Root="HKLM"
Key="SOFTWARE\Classes">
<RegistryKey Key="AppId">
<RegistryKey Key="$(var.ControllerAppid)" Action="create">
<RegistryValue Type="string"
Value="ChromotingElevatedController"/>
</RegistryKey>
<RegistryKey Key="$(var.ControllerBinary)" Action="create">
<RegistryValue Type="string"
Name="AppID"
Value="$(var.ControllerAppid)"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="$(var.ControllerProgid)" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerClass)"/>
<RegistryKey Key="CLSID" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerClsid)"/>
</RegistryKey>
<RegistryKey Key="CurVer" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerProgid).1"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="$(var.ControllerProgid).1" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerClass)"/>
<RegistryKey Key="CLSID" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerClsid)"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="CLSID">
<RegistryKey Key="$(var.ControllerClsid)" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerClass)"/>
<RegistryValue Type="string"
Name="AppID"
Value="$(var.ControllerAppid)"/>
<RegistryValue Type="string"
Name="LocalizedString"
Value="@[#$(var.ControllerBinary)],-100"/>
<RegistryKey Key="LocalServer32" Action="create">
<RegistryValue Type="string"
Value="[#$(var.ControllerBinary)]"/>
</RegistryKey>
<RegistryKey Key="ProgID" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerProgid).1"/>
</RegistryKey>
<RegistryKey Key="TypeLib" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerTypelib)"/>
</RegistryKey>
<RegistryKey Key="VersionIndependentProgID" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerProgid)"/>
</RegistryKey>
<RegistryKey Key="Elevation" Action="create">
<RegistryValue Type="integer"
Name="Enabled"
Value="1"/>
</RegistryKey>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="Interface">
<RegistryKey Key="{e6c5f02a-2486-4bf0-b13f-f39be260b917}"
Action="create">
<RegistryKey Key="ProxyStubClsid32" Action="create">
<RegistryValue Type="string"
Value="{00020424-0000-0000-C000-000000000046}"/>
</RegistryKey>
<RegistryKey Key="TypeLib" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerTypelib)"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="{3ca3adb6-2dea-4c74-b267-610fef11e4ff}"
Action="create">
<RegistryKey Key="ProxyStubClsid32" Action="create">
<RegistryValue Type="string"
Value="{00020424-0000-0000-C000-000000000046}"/>
</RegistryKey>
<RegistryKey Key="TypeLib" Action="create">
<RegistryValue Type="string"
Value="$(var.ControllerTypelib)"/>
</RegistryKey>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="Typelib">
<RegistryKey Key="$(var.ControllerTypelib)" Action="create">
<RegistryKey Key="1.0" Action="create">
<RegistryKey Key="0" Action="create">
<RegistryKey Key="win32" Action="create">
<RegistryValue Type="string"
Value="[#$(var.ControllerBinary)]"/>
</RegistryKey>
</RegistryKey>
<RegistryKey Key="FLAGS" Action="create">
<RegistryValue Type="string"
Value="0"/>
</RegistryKey>
<RegistryKey Key="HELPDIR" Action="create">
<RegistryValue Type="string"
Value="[chromoting]"/>
</RegistryKey>
</RegistryKey>
</RegistryKey>
</RegistryKey>
</RegistryKey>
</Component>
</DirectoryRef>
<UIRef Id="WixUI_ErrorProgressText" />
<Feature Id="chromoting_host" Level="1" Title="$(var.ChromotingHost)">
<ComponentRef Id="omaha_registration"/>
<ComponentRef Id="remoting_service.exe"/>
<ComponentRef Id="remoting_me2me_host.exe"/>
<ComponentRef Id="sas.dll"/>
<ComponentRef Id="service_controller"/>
</Feature>
</Product>
</Wix>