Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(884)

Unified Diff: remoting/host/installer/chromoting.wxs

Issue 10048003: The Chromoting service should not start automatically unless it was configured from the webapp to d… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: remoting/host/installer/chromoting.wxs
diff --git a/remoting/host/installer/chromoting.wxs b/remoting/host/installer/chromoting.wxs
index d546a44aeb46315395a3766f9adc0badddad6ad2..f92cfc02ea4ce29712bb0d9a0ce313926e6ae14a 100644
--- a/remoting/host/installer/chromoting.wxs
+++ b/remoting/host/installer/chromoting.wxs
@@ -108,7 +108,7 @@
DisplayName="@[#remoting_service.exe],-101"
Description="@[#remoting_service.exe],-102"
Arguments="--host-binary="[#remoting_me2me_host.exe]" --auth-config="[config_files]host.json" --host-config="[config_files]host.json""
- Start="auto"
+ Start="demand"
Account="LocalSystem"
ErrorControl="ignore"
Interactive="no" />
@@ -287,6 +287,33 @@
</Component>
</DirectoryRef>
+ <!-- The service is always installed in the stopped state with start type
+ set to 'manual'. This becomes a problem when upgrading an exitsing
Wez 2012/04/10 21:26:20 typo: existing
alexeypa (please no reviews) 2012/04/10 22:18:16 Done.
+ installation that is configured to start the service automatically.
+
+ Here we check if the service was configured to start automatically
+ before any changes to the system were made. After the installation is
Wez 2012/04/10 21:26:20 nit: This wording could be clearer; we check the s
alexeypa (please no reviews) 2012/04/10 22:18:16 Well, the wording above is incorrect.
+ complete we start the service (via the controller component) if it was
+ configured to start automatically. -->
+ <Property Id="CHROMOTING_SERVICE_START_TYPE">
+ <RegistrySearch Id="chromoting_service_start_type"
+ Root="HKLM"
+ Key="SYSTEM\CurrentControlSet\services\$(var.ServiceName)"
+ Name="Start"
+ Type="raw" />
+ </Property>
+
+ <CustomAction Id="query_auto_start_service"
+ Property="auto_start_service"
+ Value="[CHROMOTING_SERVICE_START_TYPE]" />
+
+ <CustomAction Id="set_auto_start_service" Script="jscript">
+ <![CDATA[
+ var controller = new ActiveXObject("$(var.ControllerProgid)");
+ controller.StartDaemon();
+ ]]>
+ </CustomAction>
+
<UIRef Id="WixUI_ErrorProgressText" />
<Feature Id="chromoting_host" Level="1" Title="$(var.ChromotingHost)">
@@ -296,5 +323,10 @@
<ComponentRef Id="service_controller"/>
</Feature>
+ <InstallExecuteSequence>
+ <Custom Action="query_auto_start_service" Before="InstallInitialize"/>
+ <Custom Action="set_auto_start_service" After="InstallFinalize">NOT INSTALLED AND (auto_start_service = "#2")</Custom>
+ </InstallExecuteSequence>
+
</Product>
</Wix>

Powered by Google App Engine
This is Rietveld 408576698