StevenOfPomroyIL Posted November 29, 2011 Posted November 29, 2011 (edited) I'm a noobie and I would like to:1. Declare variables in a text file2. #Include that file from outside the include libraryHere's the scenario: I have an variable called $emailList that I've defined in a text file that resides at the root of my computer. I would like to use this variable in 10-15 small reporting programs. Rather than mess around with copying and pasting the variable $emailList from one .AU3 file to the next, I would simply reference the emailList.txt file and viola--uniformity. I am hoping that I do not have to actually open the file and programmatically set a variable in my AU3 script to the content of the text file--but rather than simply "include" the variable into the script (even if it is only read to the program at the compiler).The .au3 code is:#include "emailLists.txt"The content of the #include "emailLists.txt" is:$emailList = "stever@############.org"Any help is much appreciated.Steve R. Edited November 29, 2011 by StevenOfPomroyIL
ZacUSNYR Posted November 29, 2011 Posted November 29, 2011 (edited) Check out IniRead and IniReadSection in the help file.Change your logic thinking[Settings] ComputerName=MYCOMPUTERAbove would be the ini file.Below would be in the autoit script. You declare the variable inside the script and have it read the contents of the variable from the ini file. You don't have to use ini but the built in ini functions work really well for what you're looking for. Using IniReadSection will require you to understand Arrays in AutoIt but will allow you to do more what it sounds like you're looking for. $sComputerName = IniRead("c:sharedpathsettings.ini", "Settings", "ComputerName", "0") Edited November 29, 2011 by ZacUSNYR
StevenOfPomroyIL Posted November 29, 2011 Author Posted November 29, 2011 Thanks this works. I appreciate your help -Steven
BrewManNH Posted November 29, 2011 Posted November 29, 2011 If you look at any of the xxxConstants.au3 files in the AutoIt3Include folder you can see that you can have variables that are in an include file be included into your script. No need to go through the ini file process. As long as the include is at the beginning of the script, and you scope the variable correctly, you shouldn't have any problems. 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
ZacUSNYR Posted November 30, 2011 Posted November 30, 2011 If you look at any of the xxxConstants.au3 files in the AutoIt3Include folder you can see that you can have variables that are in an include file be included into your script. No need to go through the ini file process. As long as the include is at the beginning of the script, and you scope the variable correctly, you shouldn't have any problems.I take his original question as him wishing to be able to update the variables in one place without having to recompile every time.
BrewManNH Posted November 30, 2011 Posted November 30, 2011 I take his original question as him wishing to be able to update the variables in one place without having to recompile every time. (even if it is only read to the program at the compiler).I saw this and assumed he meant that it would be read in once. 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
guinness Posted November 30, 2011 Posted November 30, 2011 I think Variable and Value are the cause of this confusion. When I first skim read it, I thought the user was asking for a variable e.g. sExample to be literally read as a string from a text file and then using Eval to return as a variable etc.. therefore very chaotic! After reading it again and substituting variable for value, I would say the INI functions are the way to go. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
ZacUSNYR Posted November 30, 2011 Posted November 30, 2011 (edited) Either way, his question is confusing now and he knows two different ways to do it either way he asked it lol Edited November 30, 2011 by ZacUSNYR
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