Thread 'Creating Custom Boinc client (boing gui manager) Installer for windows'

Message boards : BOINC Manager : Creating Custom Boinc client (boing gui manager) Installer for windows
Message board moderation

To post messages, you must log in.

AuthorMessage
Saad

Send message
Joined: 23 Oct 17
Posts: 17
Message 86438 - Posted: 3 Jun 2018, 23:23:47 UTC

We are using boinc for a project which is in test mode yet. I have made minor changes in client gui source code and have successfully configured and build using Visual Studio Community Addition 2013. I have followed this guide to configure and build boinc gui latest source code https://boinc.berkeley.edu/trac/wiki/CompileClient . Our project requires minute changes in boinc manager (as our projects is moreover like grid computing using institute machines) so now we need to create a Windows/Mac installer similar to those available at https://boinc.berkeley.edu/download_all.php. To create a installer for Windows I have followed this guide https://boinc.berkeley.edu/trac/wiki/AdminInstallerWin but this guide is a bit confusing for me, when I try these guidelines:

If custom actions have changed, copy boinccas.dll from win_build/Build/x64/Release to win_build/installerv2/redist/Windows/x64 (and same for x86).
Set up boinc_codesign directory (peer of boinc/):
copy boinc.pfx and android_keystore (get these files from davea or Rom)


Copy customdict.txt and customenv.cmd to
boinc_depends_xxx/developr/David (or whatever your username is).

Edit customdict.txt to point to where boinc_codesign dir is,
e.g. BUILDCODESIGN=C:\users\David\documents\boinc_git\boinc_codesign (don't use spaces in path).

Run Visual Studio shell:
in start menu, Microsoft Visual Studio 2010 / Visual Studio Tools/ Visual Studio Command Prompt


above points does not lead me to anywhere, and many files are not available in the configured root directory and if I try to move on using buildenv.cmd I get error codesign not possible contact the development team.
Another query ? Once I have build can I use some other technique to create installer like InstallShield or some Visual Studio extensions? I just need a lead to make installer (using BOINC.ism file present in installerv2 directory) after I have build all the modules in release mode. Lastly it would be of great help if someone can highlight the modules that should be build before creating a installer, uptil now I have build, boinc, boincmgr, boinccmd, boincscr, boinctray,boincsvcctrl[/i] Thanking you in anticipation, let me know if I I have posted the thread in wrong domain so I redirect my query to right place.
ID: 86438 · Report as offensive
ProfileJord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15560
Netherlands
Message 86443 - Posted: 4 Jun 2018, 8:49:04 UTC

Hi and welcome to the BOINC forums,
I asked David and he told me you'll need InstallShield, although you may get into trouble that the *.ism files don't work with a newer version of InstallShield. David still uses an older version.
You can skip the code-signing steps.
ID: 86443 · Report as offensive
Saad

Send message
Joined: 23 Oct 17
Posts: 17
Message 87870 - Posted: 29 Aug 2018, 1:02:07 UTC - in response to Message 86443.  

I have tried it with many versions of Install Shield. I used Install Shield 2011 which is the correct version for installer. I could not figure how to skip code signing process, so I removed it from .ism file it works. But the exe being created creates some problem. It does not let you uninstall the boinc from machines correctly. Below is the error "The resource you are trying to find is on some other network", which is due to some wrong configuration of directories. But I skipped two lines from boinc.ism which were only about boinc code signing part.

Can you please ask again where am I going wrong ?
ID: 87870 · Report as offensive
Richard Haselgrove
Volunteer tester
Help desk expert

Send message
Joined: 5 Oct 06
Posts: 5128
United Kingdom
Message 87874 - Posted: 29 Aug 2018, 11:13:47 UTC - in response to Message 87870.  

Installshield packages up all the required components into a boinc.msi file, and it's Microsoft's Windows Installer which performs both the installation and the uninstallation. It leaves traces of its work in the Windows registry. These are taken from a Windows 7 registry after a BOINC v7.12.1/x64 installation.

[HKEY_CURRENT_USER\Software\Microsoft\Installer\Products\E86DD6DAB39F51D4AB35BFD20DC7868A\SourceList]
"PackageName"="BOINC.msi"
"LastUsedSource"=hex(2):6e,00,3b,00,31,00,3b,00,43,00,3a,00,5c,00,57,00,69,00,\
6e,00,64,00,6f,00,77,00,73,00,5c,00,44,00,6f,00,77,00,6e,00,6c,00,6f,00,61,\
00,64,00,65,00,64,00,20,00,49,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,61,00,\
74,00,69,00,6f,00,6e,00,73,00,5c,00,7b,00,45,00,42,00,35,00,37,00,33,00,35,\
00,32,00,34,00,2d,00,39,00,42,00,31,00,38,00,2d,00,34,00,32,00,38,00,38,00,\
2d,00,38,00,41,00,43,00,41,00,2d,00,37,00,44,00,30,00,41,00,37,00,31,00,36,\
00,30,00,39,00,34,00,41,00,37,00,7d,00,5c,00,00,00

[HKEY_CURRENT_USER\Software\Microsoft\Installer\Products\E86DD6DAB39F51D4AB35BFD20DC7868A\SourceList\Media]
"DiskPrompt"="[1]"
"1"="DISK1;1"

[HKEY_CURRENT_USER\Software\Microsoft\Installer\Products\E86DD6DAB39F51D4AB35BFD20DC7868A\SourceList\Net]
"1"=hex(2):43,00,3a,00,5c,00,57,00,69,00,6e,00,64,00,6f,00,77,00,73,00,5c,00,\
44,00,6f,00,77,00,6e,00,6c,00,6f,00,61,00,64,00,65,00,64,00,20,00,49,00,6e,\
00,73,00,74,00,61,00,6c,00,6c,00,61,00,74,00,69,00,6f,00,6e,00,73,00,5c,00,\
7b,00,45,00,42,00,35,00,37,00,33,00,35,00,32,00,34,00,2d,00,39,00,42,00,31,\
00,38,00,2d,00,34,00,32,00,38,00,38,00,2d,00,38,00,41,00,43,00,41,00,2d,00,\
37,00,44,00,30,00,41,00,37,00,31,00,36,00,30,00,39,00,34,00,41,00,37,00,7d,\
00,5c,00,00,00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-1446909043-1926004228-2671199157-1001\Products\E86DD6DAB39F51D4AB35BFD20DC7868A\InstallProperties]
"RegOwner"="Richard Haselgrove"
"RegCompany"=""
"ProductID"="none"
"LocalPackage"="C:\\Windows\\Installer\\237f144d.msi"
"AuthorizedCDFPrefix"=""
"Comments"="Berkeley Open Infrastructure for Network Computing (BOINC)"
"Contact"=""
"DisplayVersion"="7.12.1"
"HelpLink"=hex(2):68,00,74,00,74,00,70,00,3a,00,2f,00,2f,00,62,00,6f,00,69,00,\
6e,00,63,00,2e,00,62,00,65,00,72,00,6b,00,65,00,6c,00,65,00,79,00,2e,00,65,\
00,64,00,75,00,2f,00,00,00
"HelpTelephone"=""
"InstallDate"="20180720"
"InstallLocation"="D:\\BOINC\\"
"InstallSource"="C:\\Windows\\Downloaded Installations\\{EB573524-9B18-4288-8ACA-7D0A716094A7}\\"
"ModifyPath"=hex(2):4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,78,\
00,65,00,20,00,2f,00,58,00,7b,00,41,00,44,00,36,00,44,00,44,00,36,00,38,00,\
45,00,2d,00,46,00,39,00,33,00,42,00,2d,00,34,00,44,00,31,00,35,00,2d,00,42,\
00,41,00,35,00,33,00,2d,00,46,00,42,00,32,00,44,00,44,00,30,00,37,00,43,00,\
36,00,38,00,41,00,38,00,7d,00,00,00
"NoModify"=dword:00000001
"NoRepair"=dword:00000001
"Publisher"="Space Sciences Laboratory, U.C. Berkeley"
"Readme"=""
"Size"=""
"EstimatedSize"=dword:000061a7
"UninstallString"=hex(2):4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,\
78,00,65,00,20,00,2f,00,58,00,7b,00,41,00,44,00,36,00,44,00,44,00,36,00,38,\
00,45,00,2d,00,46,00,39,00,33,00,42,00,2d,00,34,00,44,00,31,00,35,00,2d,00,\
42,00,41,00,35,00,33,00,2d,00,46,00,42,00,32,00,44,00,44,00,30,00,37,00,43,\
00,36,00,38,00,41,00,38,00,7d,00,00,00
"URLInfoAbout"="http://boinc.berkeley.edu/"
"URLUpdateInfo"="http://boinc.berkeley.edu/"
"VersionMajor"=dword:00000007
"VersionMinor"=dword:0000000c
"WindowsInstaller"=dword:00000001
"Version"=dword:070c0001
"Language"=dword:00000409
"DisplayName"="BOINC"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AD6DD68E-F93B-4D15-BA53-FB2DD07C68A8}]
"AuthorizedCDFPrefix"=""
"Comments"="Berkeley Open Infrastructure for Network Computing (BOINC)"
"Contact"=""
"DisplayVersion"="7.12.1"
"HelpLink"=hex(2):68,00,74,00,74,00,70,00,3a,00,2f,00,2f,00,62,00,6f,00,69,00,\
6e,00,63,00,2e,00,62,00,65,00,72,00,6b,00,65,00,6c,00,65,00,79,00,2e,00,65,\
00,64,00,75,00,2f,00,00,00
"HelpTelephone"=""
"InstallDate"="20180720"
"InstallLocation"="D:\\BOINC\\"
"InstallSource"="C:\\Windows\\Downloaded Installations\\{EB573524-9B18-4288-8ACA-7D0A716094A7}\\"
"ModifyPath"=hex(2):4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,78,\
00,65,00,20,00,2f,00,58,00,7b,00,41,00,44,00,36,00,44,00,44,00,36,00,38,00,\
45,00,2d,00,46,00,39,00,33,00,42,00,2d,00,34,00,44,00,31,00,35,00,2d,00,42,\
00,41,00,35,00,33,00,2d,00,46,00,42,00,32,00,44,00,44,00,30,00,37,00,43,00,\
36,00,38,00,41,00,38,00,7d,00,00,00
"NoModify"=dword:00000001
"NoRepair"=dword:00000001
"Publisher"="Space Sciences Laboratory, U.C. Berkeley"
"Readme"=""
"Size"=""
"EstimatedSize"=dword:000061a7
"UninstallString"=hex(2):4d,00,73,00,69,00,45,00,78,00,65,00,63,00,2e,00,65,00,\
78,00,65,00,20,00,2f,00,58,00,7b,00,41,00,44,00,36,00,44,00,44,00,36,00,38,\
00,45,00,2d,00,46,00,39,00,33,00,42,00,2d,00,34,00,44,00,31,00,35,00,2d,00,\
42,00,41,00,35,00,33,00,2d,00,46,00,42,00,32,00,44,00,44,00,30,00,37,00,43,\
00,36,00,38,00,41,00,38,00,7d,00,00,00
"URLInfoAbout"="http://boinc.berkeley.edu/"
"URLUpdateInfo"="http://boinc.berkeley.edu/"
"VersionMajor"=dword:00000007
"VersionMinor"=dword:0000000c
"WindowsInstaller"=dword:00000001
"Version"=dword:070c0001
"Language"=dword:00000409
"DisplayName"="BOINC"
I suspect that your problem arises from the GUID strings:

"InstallSource"="C:\\Windows\\Downloaded Installations\\{EB573524-9B18-4288-8ACA-7D0A716094A7}\\"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AD6DD68E-F93B-4D15-BA53-FB2DD07C68A8}]

(the binary UninstallString shown above is the same GUID {AD6DD68E-F93B-4D15-BA53-FB2DD07C68A8} shown in the key name)

These GUIDs will probably need to be generated afresh with every alteration of the msi file contents: you'll see {AD6DD68E-F93B-4D15-BA53-FB2DD07C68A8} as a modification to win_build/installerv2/BOINCx64.ism in https://github.com/BOINC/boinc/commit/bd12338dbd29083daa5a4b022592ca31ff68cd98. I can only suggest you search for references to uninstall GUIDs in the InstallShield documentation.
ID: 87874 · Report as offensive

Message boards : BOINC Manager : Creating Custom Boinc client (boing gui manager) Installer for windows

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.