qwert Posted April 12, 2015 Share Posted April 12, 2015 In looking into the way AutoIt3Wrapper inserts the language strings into the exe, I haven't been able to determine the source of the blocks of language strings ... IOW, the value of $InpResFile in the following snippet from the wrapper script: Case 6 ; RT_STRING Local $aLangs = IniReadSectionNames($InpResFile) If @error Then Write_RC_Console_Msg("Resource Update skipped: string file did not contain valid input", "", "+") Return EndIf ; loop each language section Local $aStrings, $aBlocks, $aBlock Local $iBlock, $iIdx, $iID, $sStr, $iBlockIdx Local $iElem, $sStruct, $oStruct For $i = 1 To $aLangs[0] ; aLangs[i] = current language $aStrings = IniReadSection($InpResFile, $aLangs[$i]) Would anyone happen to know its whereabouts? Thanks for any help. Link to comment Share on other sites More sharing options...
qwert Posted April 13, 2015 Author Share Posted April 13, 2015 As a clarification, these are the blocks I'm trying to locate: Link to comment Share on other sites More sharing options...
BrewManNH Posted April 13, 2015 Share Posted April 13, 2015 $InpResFile is a parameter for the function _Res_Update, so it depends on where it's being called from. Search through the script to find the places in it that _Res_Update is called and you'll find what the value of it is. If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
qwert Posted April 13, 2015 Author Share Posted April 13, 2015 Thanks for responding. Actually, I had done something like that back when I figured it would be an easy thing to determine. But the first and simplest of the calls was of no help: ; ; Call UpdateResource DllCalls to update the requested resource with the provided RES or ICO file. ; Func _Res_Update($rh, $InpResFile, $RType, $RName, $RLanguage = 1033) Other calls of _Res_Update() are even less definitive. All in all, it's a rather convoluted environment inside AutoItWrapper. Link to comment Share on other sites More sharing options...
qwert Posted April 19, 2015 Author Share Posted April 19, 2015 I need to refine my request. Can anyone tell me where the Au3 language files are located? My goal is still to find the error messages, as I originally requested. But another week of thinking about it and trying various searches hasn't turned up even a clue. I've search properties files and configuration files in both Au3 and SciTE. I'm now thinking they must be encoded in some way. My refocus on the language files is a result of finding this code segment in AutoItWrapper.au3: Case 6 ; RT_STRING Local $aLangs = IniReadSectionNames($InpResFile) If @error Then Write_RC_Console_Msg("Resource Update skipped: string file did not contain valid input", "", "+") Return EndIf ; loop each language section Local $aStrings, $aBlocks, $aBlock Local $iBlock, $iIdx, $iID, $sStr, $iBlockIdx Local $iElem, $sStruct, $oStruct For $i = 1 To $aLangs[0] ; aLangs[i] = current language $aStrings = IniReadSection($InpResFile, $aLangs[$i]) If @error Then Write_RC_Console_Msg("Resource Update skipped: language '" & $aLangs[$i] & "' is not valid", "", "+") ContinueLoop EndIf ; reset block array Dim $aBlocks[1] = [0] It refers to INI files for languages. But I can't locate any such files. For a seemingly simple thing, this has turned into an exasperating search. Help will be appreciated. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now