NyanDora_Mech_Tank Posted November 16, 2023 Posted November 16, 2023 Hello Aslain, I'm curious about the Aslain mod setup. How to make it auto detect WoT installation path in user's PC? I'm developing a setup to install WoT mods. Currently I'm using Inno Setup 6.2.2. My installer works fine, but for now it cannot auto detect WoT installation path. User have to manually select the installation path to their WoT folder (during their first time installation), which may cause problems. I summarized the code for the installation path as below. If you need more details, I can send to you the complete source code. Quote #define GameID "{5F05CE9B-7768-490E-9A71-C6R92B4EX123}" [Setup] AppId={{#GameID} AppName={#MyAppName} //====={ Default installation Dir Name that will appear before Browse }=====\\ DefaultDirName={code:MyDirName} DefaultGroupName={#MyAppName} AppendDefaultDirName=no ;not add new folder after browse [Code] function MyDirName(S:String): String; var InsPath: String; er: boolean; myFile:String; begin Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //Nyan: Default dir name before Browse er := RegQueryStringValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{5F05CE9B-7768-490E-9A71-C6R92B4EX123}_is1', 'InstallLocation', InsPath); if er and (InsPath<>'') then //Nyan: Browsing direction begin Result := InsPath; end; end; Thanks a lot for your support! I'm a WoT modder since 2014 (mostly sound mods) but I haven't tried your mods until yesterday and it was a wow to me after using yours. Quote
Administrator Solution Aslain Posted November 16, 2023 Administrator Solution Posted November 16, 2023 Hi, I'm using this: https://gitlab.com/openwg/openwg.utils it's also used in the installer from the XVM Team. You can look how they coded it in Inno Setup here: https://gitlab.com/xvm/xvm.installer I recognize your name, I've seen it often on asian forums, probably related to anime mods or GuP. I even have some mods (anime music) from you in my modpack. I'm glad that you like my work 🙂 Quote
NyanDora_Mech_Tank Posted November 17, 2023 Author Posted November 17, 2023 Thanks Aslain, after some investigation I made it 😀 I put the summarized code here in case someone else need it. Could be helpful if someone already designed the code different from original XVM and only need some functions, like me. Quote //Download Release code of openwg.utils from Git and extract to setup workspace folder #include "innosetup\openwg.utils.iss" //In this file, make sure DLL paths are correct. //====={ Default installation Dir Name that will appear before Browse }=====\\ DefaultDirName={code:MyDirName} DefaultGroupName={#MyAppName} AppendDefaultDirName=no ;not add new folder after browse [Code] function MyDirName(S:String): String; var InsPath: String; er: integer; myFile:String; begin Result:=ExpandConstant('C:\Games\World_of_Tanks\'); //Nyan: Default dir name before Browse myFile := WOT_GetClientPathW(er); if myFile<>'' then //Nyan: Browsing direction begin Result := myFile; end; end; 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.