Skip to content

Commit f8aec6f

Browse files
committed
MDEV-26235 Install 64bit heidisql on 64bit Windows
Changed the logic to install HeidiSQL 64bit version into 64bit CommonFiles directory.
1 parent 8c817e2 commit f8aec6f

File tree

4 files changed

+62
-32
lines changed

4 files changed

+62
-32
lines changed

win/packaging/extra.wxs.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -598,7 +598,7 @@
598598

599599
<!-- Optional 3rd party tools -->
600600
<DirectoryRef Id='TARGETDIR'>
601-
<Directory Id='CommonFilesFolder'>
601+
<Directory Id='CommonFiles64Folder'>
602602
<Directory Id='MariaDBShared' Name='MariaDBShared'/>
603603
</Directory>
604604
<Directory Id='DesktopFolder'/>

win/packaging/heidisql.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
SET(HEIDISQL_BASE_NAME "HeidiSQL_12.10_32_Portable")
1+
SET(HEIDISQL_BASE_NAME "HeidiSQL_12.10_64_Portable")
22
SET(HEIDISQL_ZIP "${HEIDISQL_BASE_NAME}.zip")
33
SET(HEIDISQL_URL "https://www.heidisql.com/downloads/releases/${HEIDISQL_ZIP}")
44
SET(HEIDISQL_DOWNLOAD_DIR ${THIRD_PARTY_DOWNLOAD_LOCATION}/${HEIDISQL_BASE_NAME})

win/packaging/heidisql.wxi.in

Lines changed: 59 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
<Include>
2-
<Property Id="HEIDISQLINSTALLED" Secure="yes">
2+
<Property Id="HEIDISQLINSTALLED64" Secure="yes">
33
<RegistrySearch Id="HeidiSQL"
4+
Root="HKLM"
5+
Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HeidiSQL_is1"
6+
Name="UninstallString"
7+
Type="raw"
8+
Win64="yes"
9+
/>
10+
</Property>
11+
<Property Id="HEIDISQLINSTALLED32" Secure="yes">
12+
<RegistrySearch Id="HeidiSQL32"
413
Root="HKLM"
514
Key="SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\HeidiSQL_is1"
615
Name="UninstallString"
@@ -11,11 +20,11 @@
1120
<?define pluginlist=auth_gssapi_client.dll;auth_named_pipe.dll;caching_sha2_password.dll;client_ed25519.dll;dialog.dll;mysql_clear_password.dll;pvio_npipe.dll;pvio_shmem.dll;sha256_password.dll?>
1221
<DirectoryRef Id="MariaDBShared">
1322
<Directory Id="D.HeidiSQL" Name="HeidiSQL">
14-
<Component Id="component.HeidiSQL" Guid="96ea3879-5320-4098-8f26-2f655d2f716c" Win64="no">
23+
<Component Id="component.HeidiSQL" Guid="f1294698-5a30-46cb-ad87-b1aa6321d424" Win64="yes">
1524

1625
<File Id="heidisql.gpl.txt" Name="gpl.txt" Source="${HEIDISQL_DOWNLOAD_DIR}\gpl.txt" />
1726
<File Id="heidisql.heidisql.exe" Name="heidisql.exe" Source="${HEIDISQL_DOWNLOAD_DIR}\heidisql.exe" KeyPath="yes">
18-
<Shortcut Id="desktopHeidiSQL" Directory="DesktopFolder" Name="HeidiSQL" Advertise="yes"/>
27+
<Shortcut Id="desktopHeidiSQL" Directory="DesktopFolder" Name="HeidiSQL(x64)" Advertise="yes"/>
1928
</File>
2029
<!--
2130
Forced file removal for heidisql.exe might be required.
@@ -29,78 +38,94 @@
2938

3039
<File Id="heidisql.license.txt" Name="license.txt" Source="${HEIDISQL_DOWNLOAD_DIR}\license.txt" />
3140
</Component>
32-
<Component Id="component.HeidiSQL_MenuShortcut" Guid="*" Win64="no">
41+
<Component Id="component.HeidiSQL_MenuShortcut" Guid="*" Win64="yes">
3342
<RegistryValue Root="HKCU" Key="Software\@CPACK_WIX_PACKAGE_NAME@\Uninstall" Name="shortcuts.heidisql" Value="1" Type="string" KeyPath="yes" />
34-
<Shortcut Id="startmenuHeidiSQL" Directory="ShortcutFolder" Name="HeidiSQL" Target="[D.HeidiSQL]\heidisql.exe"/>
43+
<Shortcut Id="startmenuHeidiSQL" Directory="ShortcutFolder" Name="HeidiSQL(x64)" Target="[D.HeidiSQL]\heidisql.exe"/>
3544
</Component>
3645

37-
<Component Id="component.HeidiSQL_libmysql.dll" Guid="*" Win64="no">
46+
<Component Id="component.HeidiSQL_libmysql.dll" Guid="*" Win64="yes">
3847
<File Id="heidisql.libmysql.dll" Name="libmysql.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libmysql.dll" />
3948
</Component>
40-
<Component Id="component.HeidiSQL_libmysql_6.1.dll" Guid="*" Win64="no">
49+
<Component Id="component.HeidiSQL_libmysql_6.1.dll" Guid="*" Win64="yes">
4150
<File Id="heidisql.libmysql_6.1.dll" Name="libmysql-6.1.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libmysql-6.1.dll" />
4251
</Component>
43-
<Component Id="component.HeidiSQL_libmariadb.dll" Guid="*" Win64="no">
52+
<Component Id="component.HeidiSQL_libmariadb.dll" Guid="*" Win64="yes">
4453
<File Id="heidisql.libmariadb.dll" Name="libmariadb.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libmariadb.dll" />
4554
</Component>
46-
<Component Id="component.HeidiSQL_libssl_1_1.dll" Guid="*" Win64="no">
47-
<File Id="heidisql.libssl_1_1.dll" Name="libssl-1_1.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libssl-1_1.dll" />
55+
<Component Id="component.HeidiSQL_libssl_1_1.dll" Guid="*" Win64="yes">
56+
<File Id="heidisql.libssl_1_1_x64.dll" Name="libssl-1_1.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libssl-1_1-x64.dll" />
57+
</Component>
58+
<Component Id="component.HeidiSQL_libcrypto_1_1.dll" Guid="*" Win64="yes">
59+
<File Id="heidisql.libcrypto_1_1_x64.dll" Name="libcrypto-1_1-x64.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libcrypto-1_1-x64.dll" />
60+
</Component>
61+
<Component Id="component.HeidiSQL_libssl_3.dll" Guid="*" Win64="yes">
62+
<File Id="heidisql.libssl_3.dll" Name="libssl-3-x64.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libssl-3-x64.dll" />
63+
</Component>
64+
<Component Id="component.HeidiSQL_libcrypto_3.dll" Guid="*" Win64="yes">
65+
<File Id="heidisql.libcrypto_3_x64.dll" Name="libcrypto-3-x64.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libcrypto-3-x64.dll" />
4866
</Component>
49-
<Component Id="component.HeidiSQL_libpq_10.dll" Guid="*" Win64="no">
67+
68+
69+
<Component Id="component.HeidiSQL_libpq_10.dll" Guid="*" Win64="yes">
5070
<File Id="heidisql.libpq_10.dll" Name="libpq-10.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libpq-10.dll" />
5171
</Component>
52-
<Component Id="component.HeidiSQL_libcrypto_1_1.dll" Guid="*" Win64="no">
53-
<File Id="heidisql.libcrypto_1_1.dll" Name="libcrypto-1_1.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libcrypto-1_1.dll" />
72+
<Component Id="component.HeidiSQL_libpq_12.dll" Guid="*" Win64="yes">
73+
<File Id="heidisql.libpq_12.dll" Name="libpq-12.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libpq-12.dll" />
74+
</Component>
75+
<Component Id="component.HeidiSQL_libpq_15.dll" Guid="*" Win64="yes">
76+
<File Id="heidisql.libpq_15.dll" Name="libpq-15.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libpq-15.dll" />
77+
</Component>
78+
<Component Id="component.HeidiSQL_libpq_17.dll" Guid="*" Win64="yes">
79+
<File Id="heidisql.libpq_17.dll" Name="libpq-17.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libpq-17.dll" />
5480
</Component>
55-
<Component Id="component.HeidiSQL_libintl_8.dll" Guid="*" Win64="no">
81+
82+
<Component Id="component.HeidiSQL_libintl_8.dll" Guid="*" Win64="yes">
5683
<File Id="heidisql.libintl_8.dll" Name="libintl-8.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libintl-8.dll" />
5784
</Component>
58-
<Component Id="component.HeidiSQL_libiconv_2.dll" Guid="*" Win64="no">
85+
<Component Id="component.HeidiSQL_libiconv_2.dll" Guid="*" Win64="yes">
5986
<File Id="heidisql.libiconv_2.dll" Name="libiconv-2.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libiconv-2.dll" />
6087
</Component>
61-
<Component Id="component.HeidiSQL_sqlite3.dll" Guid="*" Win64="no">
88+
<Component Id="component.HeidiSQL_sqlite3.dll" Guid="*" Win64="yes">
6289
<File Id="heidisql.sqlite3.dll" Name="sqlite3.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\sqlite3.dll" />
6390
</Component>
6491

65-
<Component Id="component.HeidiSQL_fbclient_4.0.dll" Guid="*" Win64="no">
92+
<Component Id="component.HeidiSQL_fbclient_4.0.dll" Guid="*" Win64="yes">
6693
<File Id="fbclient4.0.dll" Name="fbclient-4.0.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\fbclient-4.0.dll" />
6794
</Component>
68-
<Component Id="component.HeidiSQL_gds32_14.1.dll" Guid="*" Win64="no">
69-
<File Id="gds32_14.1.dll" Name="gds32-14.1.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\gds32-14.1.dll" />
70-
</Component>
71-
<Component Id="component.HeidiSQL_libeay32.dll" Guid="*" Win64="no">
95+
96+
<Component Id="component.HeidiSQL_libeay32.dll" Guid="*" Win64="yes">
7297
<File Id="libeay32.dll" Name="libeay32.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\libeay32.dll" />
7398
</Component>
74-
<Component Id="component.HeidiSQL_ssleay32.dll" Guid="*" Win64="no">
99+
<Component Id="component.HeidiSQL_ssleay32.dll" Guid="*" Win64="yes">
75100
<File Id="ssleay32.dll" Name="ssleay32.dll" Source="${HEIDISQL_DOWNLOAD_DIR}\ssleay32.dll" />
76101
</Component>
77-
<Component Id="component.HeidiSQL_plink.exe" Guid="*" Win64="no">
102+
<Component Id="component.HeidiSQL_plink.exe" Guid="*" Win64="yes">
78103
<File Id="plink.exe" Name="plink.exe" Source="${HEIDISQL_DOWNLOAD_DIR}\plink.exe" />
79104
</Component>
80105

81-
<Component Id="component.HeidiSQL_LICENSE_openssl" Guid="*" Win64="no">
106+
<Component Id="component.HeidiSQL_LICENSE_openssl" Guid="*" Win64="yes">
82107
<File Id="LICENSE_openssl" Name="LICENSE-openssl" Source="${HEIDISQL_DOWNLOAD_DIR}\LICENSE-openssl" />
83108
</Component>
84109

85110
<?define functions_dblist=interbase;mariadb;mssql;mysql;postgresql;redshift;sqlite?>
86111

87112
<?foreach db in $(var.functions_dblist) ?>
88-
<Component Id="component.HeidiSQL_functions_$(var.db).ini" Guid="*" Win64="no">
113+
<Component Id="component.HeidiSQL_functions_$(var.db).ini" Guid="*" Win64="yes">
89114
<File Id="functions_$(var.db).ini" Name="functions-$(var.db).ini"
90115
Source="${HEIDISQL_DOWNLOAD_DIR}\functions-$(var.db).ini" />
91116
</Component>
92117
<?endforeach?>
93118

94119
<Directory Id="D.HeidiSQL.plugins" Name="plugins">
95120
<?foreach dll in $(var.pluginlist) ?>
96-
<Component Id="component.HeidiSQL_$(var.dll)" Guid="*" Win64="no">
121+
<Component Id="component.HeidiSQL_$(var.dll)" Guid="*" Win64="yes">
97122
<File Id="heidisql.$(var.dll)" Name="$(var.dll)" Source="${HEIDISQL_DOWNLOAD_DIR}\plugins\$(var.dll)" />
98123
</Component>
99124
<?endforeach?>
100125
</Directory>
101126

102-
<Component Id="component.HeidiSQL_CleanupSettings" Guid="*" Win64="no">
103-
<Condition>HEIDISQLINSTALLED</Condition>
127+
<Component Id="component.HeidiSQL_CleanupSettings" Guid="*" Win64="yes">
128+
<Condition>HEIDISQLINSTALLED64 OR HEIDISQLINSTALLED32</Condition>
104129
<RegistryValue Root="HKCU" Key="Software\@CPACK_WIX_PACKAGE_NAME@\UninstallCleanupHeidiSQLSettings" Name="cleanup.heidisql" Value="1" Type="string" KeyPath="yes" />
105130
<RemoveRegistryKey Id="HeidiSQL_RegistryCleanup" Root="HKCU" Key="SOFTWARE\HeidiSQL" Action="removeOnUninstall" />
106131
</Component>
@@ -113,14 +138,19 @@
113138
<ComponentRef Id="component.HeidiSQL_libmysql.dll"/>
114139
<ComponentRef Id="component.HeidiSQL_libmariadb.dll"/>
115140
<ComponentRef Id="component.HeidiSQL_libssl_1_1.dll" />
141+
<ComponentRef Id="component.HeidiSQL_libcrypto_1_1.dll" />
142+
<ComponentRef Id="component.HeidiSQL_libssl_3.dll" />
143+
<ComponentRef Id="component.HeidiSQL_libcrypto_3.dll" />
116144
<ComponentRef Id="component.HeidiSQL_libpq_10.dll" />
145+
<ComponentRef Id="component.HeidiSQL_libpq_12.dll" />
146+
<ComponentRef Id="component.HeidiSQL_libpq_15.dll" />
147+
<ComponentRef Id="component.HeidiSQL_libpq_17.dll" />
117148
<ComponentRef Id="component.HeidiSQL_libcrypto_1_1.dll" />
118149
<ComponentRef Id="component.HeidiSQL_libintl_8.dll" />
119150
<ComponentRef Id="component.HeidiSQL_libiconv_2.dll" />
120151
<ComponentRef Id="component.HeidiSQL_sqlite3.dll" />
121152
<ComponentRef Id="component.HeidiSQL_libmysql_6.1.dll" />
122153
<ComponentRef Id="component.HeidiSQL_fbclient_4.0.dll" />
123-
<ComponentRef Id="component.HeidiSQL_gds32_14.1.dll" />
124154
<ComponentRef Id="component.HeidiSQL_libeay32.dll" />
125155
<ComponentRef Id="component.HeidiSQL_ssleay32.dll" />
126156
<ComponentRef Id="component.HeidiSQL_plink.exe" />

win/packaging/heidisql_feature.wxi.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Description= 'Powerful, easy and free MySQL/MariaDB GUI client by Ansgar Becker'
55
AllowAdvertise='no'
66
Level='1'>
7-
<Condition Level="0">HEIDISQLINSTALLED AND NOT REMOVE ~= ALL</Condition>
7+
<Condition Level="0">(HEIDISQLINSTALLED32 OR HEIDISQLINSTALLED64) AND NOT REMOVE ~= ALL</Condition>
88
<ComponentGroupRef Id='HeidiSQL'/>
99
</Feature>
1010
</Include>

0 commit comments

Comments
 (0)