Modified the whole solution to use Any CPU, and changed the installer to use the /register /unregister commands

This commit is contained in:
2019-09-27 22:05:14 +01:00
parent 2cc27788c8
commit d9aa68f1e9
10 changed files with 32 additions and 92 deletions
@@ -39,7 +39,7 @@
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
@@ -24,7 +24,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
-35
View File
@@ -18,41 +18,6 @@
Vital="yes"
Assembly=".net"
AssemblyApplication="filFocuserDriverAssembly" />
<!-- Registry entries suitable for a LocalServer served class -->
<!-- HKCR\CLSID\{driver-guid} -->
<RegistryKey Root="HKCR" Key="CLSID">
<RegistryKey Key="$(var.FocuserDriverClassId)">
<RegistryValue Value="$(var.FocuserDriverProgId)" Type="string"/>
<RegistryValue Name="AppId" Value="$(var.LocalServerAppId)" Type="string"/>
<RegistryKey Key="Implemented Categories">
<RegistryKey Key="{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}"
ForceCreateOnInstall="yes"
ForceDeleteOnUninstall="yes"/>
</RegistryKey>
<RegistryKey Key="ProgId">
<RegistryValue Value="$(var.FocuserDriverProgId)" Type="string"/>
</RegistryKey>
<RegistryKey Key="Programmable"
ForceCreateOnInstall="yes"
ForceDeleteOnUninstall="yes" />
<RegistryKey Key="LocalServer32">
<RegistryValue Value="[#filLocalServerAssembly]" Type="string"/>
</RegistryKey>
</RegistryKey>
</RegistryKey>
<!-- HKCR\{driver-prog-id} -->
<RegistryKey Root="HKCR" Key="$(var.FocuserDriverProgId)">
<RegistryValue Value="$(var.FocuserDriverDescription)" Type="string"/>
<RegistryKey Key="CLSID">
<RegistryValue Value="$(var.FocuserDriverClassId)" Type="string" />
</RegistryKey>
</RegistryKey>
<!--Register the driver with the ASCOM Profile-->
<RegistryKey Root="HKLM" Key="SOFTWARE\ASCOM\Focuser Drivers\$(var.FocuserDriverProgId)">
<RegistryValue Value="$(var.FocuserDriverDescription)" Type="string"/>
</RegistryKey>
</Component>
</ComponentGroup>
</Fragment>
+25 -15
View File
@@ -12,21 +12,31 @@
Assembly=".net"
AssemblyApplication="filLocalServerAssembly" />
</Component>
<Component Id="cmpLocalServerRegistry" Win64="no">
<!-- LocalServer32 COM Registration -->
<RegistryKey Root="HKCR" Key="AppID" >
<!-- HKCR\AppID\{my-app-id} -->
<RegistryKey Key="$(var.LocalServerAppId)">
<RegistryValue Value="$(var.InstallName)" Type="string"/>
<RegistryValue Name="AppID" Value="$(var.LocalServerAppId)" Type="string"/>
<RegistryValue Name="AuthenticationLevel" Value="1" Type="integer"/>
</RegistryKey>
<!-- HKCR\AppID\{exe-name} -->
<RegistryKey Key="$(var.Meade.net.TargetFileName)">
<RegistryValue Name="AppID" Value="$(var.LocalServerAppId)" Type="string"/>
</RegistryKey>
</RegistryKey>
</Component>
</ComponentGroup>
<CustomAction Id="RegisterEXE"
Directory="INSTALLFOLDER"
ExeCommand="&quot;[#filLocalServerAssembly]&quot; /register"
Execute="deferred"
Return="ignore"
Impersonate="no"
/>
<CustomAction Id="UnRegisterEXE"
Directory="INSTALLFOLDER"
ExeCommand="&quot;[#filLocalServerAssembly]&quot; /unregister"
Execute="deferred"
Return="ignore"
Impersonate="no"
/>
<InstallExecuteSequence>
<Custom Action='RegisterEXE' Before="InstallFinalize">
<![CDATA[(NOT Installed)]]>
</Custom>
<Custom Action="UnRegisterEXE" After='RegisterEXE'>
<![CDATA[(REMOVE ~= "ALL")]]>
</Custom>
</InstallExecuteSequence>
</Fragment>
</Wix>
-35
View File
@@ -18,41 +18,6 @@
Vital="yes"
Assembly=".net"
AssemblyApplication="filTelescopeDriverAssembly" />
<!-- Registry entries suitable for a LocalServer served class -->
<!-- HKCR\CLSID\{driver-guid} -->
<RegistryKey Root="HKCR" Key="CLSID">
<RegistryKey Key="$(var.TelescopeDriverClassId)">
<RegistryValue Value="$(var.TelescopeDriverProgId)" Type="string"/>
<RegistryValue Name="AppId" Value="$(var.LocalServerAppId)" Type="string"/>
<RegistryKey Key="Implemented Categories">
<RegistryKey Key="{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}"
ForceCreateOnInstall="yes"
ForceDeleteOnUninstall="yes"/>
</RegistryKey>
<RegistryKey Key="ProgId">
<RegistryValue Value="$(var.TelescopeDriverProgId)" Type="string"/>
</RegistryKey>
<RegistryKey Key="Programmable"
ForceCreateOnInstall="yes"
ForceDeleteOnUninstall="yes" />
<RegistryKey Key="LocalServer32">
<RegistryValue Value="[#filLocalServerAssembly]" Type="string"/>
</RegistryKey>
</RegistryKey>
</RegistryKey>
<!-- HKCR\{driver-prog-id} -->
<RegistryKey Root="HKCR" Key="$(var.TelescopeDriverProgId)">
<RegistryValue Value="$(var.TelescopeDriverDescription)" Type="string"/>
<RegistryKey Key="CLSID">
<RegistryValue Value="$(var.TelescopeDriverClassId)" Type="string" />
</RegistryKey>
</RegistryKey>
<!--Register the driver with the ASCOM Profile-->
<RegistryKey Root="HKLM" Key="SOFTWARE\ASCOM\Telescope Drivers\$(var.TelescopeDriverProgId)">
<RegistryValue Value="$(var.TelescopeDriverDescription)" Type="string"/>
</RegistryKey>
</Component>
</ComponentGroup>
</Fragment>
@@ -26,7 +26,7 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -65,7 +65,7 @@
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<OutputPath>..\bin\Debug\</OutputPath>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="ASCOM.Astrometry, Version=6.0.0.0, Culture=neutral, PublicKeyToken=565de7938946fba7, processorArchitecture=MSIL">
+1 -1
View File
@@ -66,7 +66,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<RegisterForComInterop>true</RegisterForComInterop>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
+1 -1
View File
@@ -68,7 +68,7 @@
<OutputPath>..\bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>true</Prefer32Bit>
@@ -16,7 +16,7 @@
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>