dv8

(RESOLVED) How to find the error by the line number returned from the compiled EXE?

61 posts in this topic

#41 ·  Posted

Obfuscator should handle longlines fine when only perfoming the StripOnly or MergeOnly tasks.

I have uploaded a next Beta version with some fixes in it.

Supply me an example script when it is still giving error and I look at it tomorrow.

Enjoy

Jos :)


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites



#42 ·  Posted

Melba23, I did not misunderstood. :)

I'm trying to work with Jos to make the Obfuscator more useful to the AutoIt community without the need for this community to change their code.

To be honest, If I have to change my code in order to achieve my goal, I won't do it. I'd rather try to write my own tool instead of ruining code written and developed for more than 3 years.

Here is how I see it: This is a perfectly good working code (see the example above). It meets all the requirements of AutoIt and compiles just fine. What you are saying is that I need to reformulate this code in order to be able to achieve my goal.

This situation is like if you have a perfectly good table and the goal is to to put it through a bit narrower door. I'm saying "tilt the table", you are saying "dismantle the table and then put it together again in a different shape". ;) That's how it looks to me.

Anyway, let me prepare the other example for Jos now, because I'll most likely not be around for the weekend. ;)

Share this post


Link to post
Share on other sites

#44 ·  Posted

If you want to acheive your goal of finding meaningful script lines when you write buggy code, then you're going to need to rewrite the code so that you can do it. Or write your own obfuscator as mentioned.


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 Gude
How 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

Share this post


Link to post
Share on other sites

#45 ·  Posted

I plan to add this feature request for Aut2Exe.

Let me save you the trouble. The answer is "Rejected". This feature is useful to you now. It may not be useful to you in the future. It may not make sense to dump a script in that form in the future.

Line numbers should not be shown in compiled scripts at all. Somebody added that functionality because it's slightly useful in simple scripts that don't have any includes because in that rare case the line numbers match. Otherwise, do your debugging using AutoIt3.exe and it's a moot point. If it were up to me compiled scripts would still return "0" or "-1" or whatever they used to return. Actually, it is up to me. I don't feel like changing it back, though, because I don't want to listen to the whining.

Share this post


Link to post
Share on other sites

#46 ·  Posted

Thank you Valik, for your reply and the detailed explanation.

That's how I like the replies, detailed, firm and straight to the point. Some of the MVPs and members here should learn from yours and Jos's example, not just try to increase their posts number.

At least I now know why these line numbers are in the error reports and how you feel about them and my feature request. :) This saved both me (to add the request) and you (to reject it ;) ) some time.

So now I'll put all my efforts to try and help Jos to make it work right in the Obfuscator, because I'm sure this feature will be useful to may others. As Jos stated: "...this is asked a zillion time by now..."

Thanks again!

Share this post


Link to post
Share on other sites

#47 ·  Posted (edited)

dv8,

Some of the MVPs and members here should learn from yours and Jos's example, not just try to increase their posts number

I take it "How to win friends and influence people" was never on your reading list. ;)

M23

P.S. And my post count does not need padding. :)

Edited by Melba23
Typo

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

Share this post


Link to post
Share on other sites

#48 ·  Posted

Melba23,

Yes you are right, it wasn't. :)

And I never mentioned Mods in my statement so don't take it personally... ;)

And you are right again! I do apologize for that statement. It was out of line.

Share this post


Link to post
Share on other sites

#49 ·  Posted

dv8,

No problem. We are all part of the same community here - it is important that we do not lose sight of that. :)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

Share this post


Link to post
Share on other sites

#50 ·  Posted

Now back to my 3 issues...

Jos, the latest Beta update solved the problem with the popping Obfuscator GUI, so there is no need for me to make an example script any more.

However the Aut2Exe error:

Line 28930  (File "D:ProjectsAutoITWeb2AutoTrafficRobot_Obfuscated.au3"):

$CountriesList="Afghanistan (AF)|Aland Islands (AX)|Albania (AL)|Algeria (DZ)|American Samoa (AS)|Andorra (AD)|"& "Angola (AO)|Anguilla (AI)|Antarctica (AQ)|Antigua and Barbuda (AG)|Argentina (AR)|Armenia (AM)|"& "Aruba (AW)|Australia (AU)|Austria (AT)|Azerbaijan (AZ)|Bahamas (BS)|Bahrain (BH)|Bangladesh (BD)|"& "Barbados (BB)|Belarus (BY)|Belgium (BE)|Belize (BZ)|Benin (BJ)|Bermuda (BM)|Bhutan (BT)|Bolivia (BO)|"& "Bosnia and Herzegovina (BA)|Botswana (BW)|Bouvet Island (BV)|Brazil (BR)|British Indian Ocean Territory (IO)|"& "British Virgin Islands (VG)|Brunei (BN)|Bulgaria (BG)|Burkina Faso (BF)|Burundi (BI)|Cambodia (KH)|"& "Cameroon (CM)|Canada (CA)|Cape Verde (CV)|Cayman Islands (KY)|Central African Republic (CF)|Chad (TD)|"& "Chile (CL)|China (CN)|Christmas Island (CX)|Cocos (Keeling) Islands (CC)|Colombia (CO)|Comoros (KM)|"& "Congo (CG)|Cook Islands (CK)|Costa Rica (CR)|Croatia (HR)|Cuba (CU)|Cyprus (CY)|Czech Republic (CZ)|"& "Democratic Republic of Congo (CD)|Denmark (DK)|Disputed Territory (XX)|Djibouti (DJ)|Dominica (DM)|"& "Dominican Republic (DO)|East Timor (TL)|Ecuador (EC)|Egypt (EG)|El Salvador (SV)|Equatorial Guinea (GQ)|"& "Eritrea (ER)|Estonia (EE)|Ethiopia (ET)|Falkland Islands (FK)|Faroe Islands (FO)|Federated States of Micronesia (FM)|"& "Fiji (FJ)|Finland (FI)|France (FR)|French Guyana (GF)|French Polynesia (PF)|French Southern Territories (TF)|"& "Gabon (GA)|Gambia (GM)|Georgia (GE)|Germany (DE)|Ghana (GH)|Gibraltar (GI)|Greece (GR)|Greenland (GL)|Grenada (GD)|"& "Guadeloupe (GP)|Guam (GU)|Guatemala (GT)|Guinea (GN)|Guinea-Bissau (GW)|Guyana (GY)|Haiti (HT)|"& "Heard Island and Mcdonald Islands (HM)|Honduras (HN)|Hong Kong (HK)|Hungary (HU)|Iceland (IS)|India (IN)|"& "Indonesia (ID)|Iran (IR)|Iraq (IQ)|Iraq-Saudi Arabia Neutral Zone (XE)|Ireland (IE)|Israel (IL)|Italy (IT)|"& "Ivory Coast (CI)|Jamaica (JM)|Japan (JP)|Jordan (JO)|Kazakhstan (KZ)|Kenya (KE)|Kiribati (KI)|Kuwait (KW)|"& "Kyrgyzstan (KG)|Laos (LA)|Latvia (LV)|Lebanon (LB)|Lesotho (LS)|Liberia (LR)|Libya (LY)|Liechtenstein (LI)|"& "Lithuania (LT)|Luxembourg (LU)|Macau (MO)|Macedonia (MK)|Madagascar (MG)|Malawi (MW)|Malaysia (MY)|Maldives (MV)|"& "Mali (ML)|Malta (MT)|Marshall Islands (MH)|Martinique (MQ)|Mauritania (MR)|Mauritius (MU)|Mayotte (YT)|"& "Mexico (MX)|Moldova (MD)|Monaco (MC)|Mongolia (MN)|Montserrat (MS)|Morocco (MA)|Mozambique (MZ)|Myanmar (MM)|"& "Namibia (NA)|Nauru (NR)|Nepal (NP)|Netherlands (NL)|Netherlands Antilles (AN)|New Caledonia (NC)|New Zealand (NZ)|"& "Nicaragua (NI)|Niger (NE)|Nigeria (NG)|Niue (NU)|Norfolk Island (NF)|North Korea (KP)|Northern Mariana Islands (MP)|"& "Norway (NO)|Oman (OM)|Pakistan (PK)|Palau (PW)|Palestinian Occupied Territories (PS)|Panama (PA)|Papua New Guinea (PG)|"& "Paraguay (PY)|Peru (PE)|Philippines (PH)|Pitcairn Islands (PN)|Poland (PL)|Portugal (PT)|Puerto Rico (PR)|Qatar (QA)|"& "Reunion (RE)|Romania (RO)|Russia (RU)|Rwanda (RW)|Saint Helena and Dependencies (SH)|Saint Kitts and Nevis (KN)|"& "Saint Lucia (LC)|Saint Pierre and Miquelon (PM)|Saint Vincent and the Grenadines (VC)|Samoa (WS)|San Marino (SM)|"& "Sao Tome and Principe (ST)|Saudi Arabia (SA)|Senegal (SN)|Serbia and Montenegro (CS)|Seychelles (SC)|Sierra Leone (SL)|"& "Singapore (SG)|Slovakia (SK)|Slovenia (SI)|Solomon Islands (SB)|Somalia (SO)|South Africa (ZA)|"& "South Georgia and South Sandwich Islands (GS)|South Korea (KR)|Spain (ES)|Spratly Islands (PI)|Sri Lanka (LK)|"& "Sudan (SD)|Suriname (SR)|Svalbard and Jan Mayen (SJ)|Swaziland (SZ)|Sweden (SE)|Switzerland (CH)|Syria (SY)|Taiwan (TW)|"& "Tajikistan (TJ)|Tanzania (TZ)|Thailand (TH)|Togo (TG)|Tokelau (TK)|Tonga (TO)|Trinidad and Tobago (TT)|Tunisia (TN)|"& "Turkey (TR)|Turkmenistan (TM)|Turks And Caicos Islands (TC)|Tuvalu (TV)|Uganda (UG)|Ukraine (UA)|United Arab Emirates (AE)|"& "United Kingdom (UK)|United Nations Neutral Zone (XD)|United States (US)|United States Minor Outlying Islands (UM)|"& "Uruguay (UY)|US Virgin Islands (VI)|Uzbekistan (UZ)|Vanuatu (VU)|Vatican City (VA)|Venezuela (VE)|Vietnam (VN)|"& "Wallis and Futuna (WF)|Western Sahara (EH)|Yemen

Error: Unterminated string.

still appears when the obfuscated script is ran trough it.

Try with the last example I posted.

Share this post


Link to post
Share on other sites

#51 ·  Posted

I think BrewManNH was right when he said "...If you have such long lines/strings then you're not going to be able to use /mo..."

What Obfuscator is currently doing is concatenating lines that were deliberately split into smaller parts in order to pass through the compiler. And this concatenation is adding more characters to this long line (a few "& " in this particular example), making it even longer and it fails. So this is pointless.

Again as BrewManNH stated, a simple workaround for me would be to use a few string variables to brake the long string and then concatenate these variables in the final string like this:

$String1="Part 1 of the long string..."
$String2="Part 2 of the long string..."
...
$CountriesList=$String1&$String2&...

And I'm more than willing to do that now if it will get me to my goal. :)

Share this post


Link to post
Share on other sites

#52 ·  Posted (edited)

Now back to my 3 issues...

Jos, the latest Beta update solved the problem with the popping Obfuscator GUI, so there is no need for me to make an example script any more.

However the Aut2Exe error:

Line 28930  (File "D:ProjectsAutoITWeb2AutoTrafficRobot_Obfuscated.au3"):

$CountriesList="Afghanistan (AF)|Aland Islands (AX)|Albania (AL)|Algeria (DZ)|American Samoa (AS)|Andorra (AD)|"& "Angola (AO)|Anguilla (AI)|Antarctica (AQ)|Antigua and Barbuda (AG)|Argentina (AR)|Armenia (AM)|"& "Aruba (AW)|Australia (AU)|Austria (AT)|Azerbaijan (AZ)|Bahamas (BS)|Bahrain (BH)|Bangladesh (BD)|"& "Barbados (BB)|Belarus (BY)|Belgium (BE)|Belize (BZ)|Benin (BJ)|Bermuda (BM)|Bhutan (BT)|Bolivia (BO)|"& "Bosnia and Herzegovina (BA)|Botswana (BW)|Bouvet Island (BV)|Brazil (BR)|British Indian Ocean Territory (IO)|"& "British Virgin Islands (VG)|Brunei (BN)|Bulgaria (BG)|Burkina Faso (BF)|Burundi (BI)|Cambodia (KH)|"& "Cameroon (CM)|Canada (CA)|Cape Verde (CV)|Cayman Islands (KY)|Central African Republic (CF)|Chad (TD)|"& "Chile (CL)|China (CN)|Christmas Island (CX)|Cocos (Keeling) Islands (CC)|Colombia (CO)|Comoros (KM)|"& "Congo (CG)|Cook Islands (CK)|Costa Rica (CR)|Croatia (HR)|Cuba (CU)|Cyprus (CY)|Czech Republic (CZ)|"& "Democratic Republic of Congo (CD)|Denmark (DK)|Disputed Territory (XX)|Djibouti (DJ)|Dominica (DM)|"& "Dominican Republic (DO)|East Timor (TL)|Ecuador (EC)|Egypt (EG)|El Salvador (SV)|Equatorial Guinea (GQ)|"& "Eritrea (ER)|Estonia (EE)|Ethiopia (ET)|Falkland Islands (FK)|Faroe Islands (FO)|Federated States of Micronesia (FM)|"& "Fiji (FJ)|Finland (FI)|France (FR)|French Guyana (GF)|French Polynesia (PF)|French Southern Territories (TF)|"& "Gabon (GA)|Gambia (GM)|Georgia (GE)|Germany (DE)|Ghana (GH)|Gibraltar (GI)|Greece (GR)|Greenland (GL)|Grenada (GD)|"& "Guadeloupe (GP)|Guam (GU)|Guatemala (GT)|Guinea (GN)|Guinea-Bissau (GW)|Guyana (GY)|Haiti (HT)|"& "Heard Island and Mcdonald Islands (HM)|Honduras (HN)|Hong Kong (HK)|Hungary (HU)|Iceland (IS)|India (IN)|"& "Indonesia (ID)|Iran (IR)|Iraq (IQ)|Iraq-Saudi Arabia Neutral Zone (XE)|Ireland (IE)|Israel (IL)|Italy (IT)|"& "Ivory Coast (CI)|Jamaica (JM)|Japan (JP)|Jordan (JO)|Kazakhstan (KZ)|Kenya (KE)|Kiribati (KI)|Kuwait (KW)|"& "Kyrgyzstan (KG)|Laos (LA)|Latvia (LV)|Lebanon (LB)|Lesotho (LS)|Liberia (LR)|Libya (LY)|Liechtenstein (LI)|"& "Lithuania (LT)|Luxembourg (LU)|Macau (MO)|Macedonia (MK)|Madagascar (MG)|Malawi (MW)|Malaysia (MY)|Maldives (MV)|"& "Mali (ML)|Malta (MT)|Marshall Islands (MH)|Martinique (MQ)|Mauritania (MR)|Mauritius (MU)|Mayotte (YT)|"& "Mexico (MX)|Moldova (MD)|Monaco (MC)|Mongolia (MN)|Montserrat (MS)|Morocco (MA)|Mozambique (MZ)|Myanmar (MM)|"& "Namibia (NA)|Nauru (NR)|Nepal (NP)|Netherlands (NL)|Netherlands Antilles (AN)|New Caledonia (NC)|New Zealand (NZ)|"& "Nicaragua (NI)|Niger (NE)|Nigeria (NG)|Niue (NU)|Norfolk Island (NF)|North Korea (KP)|Northern Mariana Islands (MP)|"& "Norway (NO)|Oman (OM)|Pakistan (PK)|Palau (PW)|Palestinian Occupied Territories (PS)|Panama (PA)|Papua New Guinea (PG)|"& "Paraguay (PY)|Peru (PE)|Philippines (PH)|Pitcairn Islands (PN)|Poland (PL)|Portugal (PT)|Puerto Rico (PR)|Qatar (QA)|"& "Reunion (RE)|Romania (RO)|Russia (RU)|Rwanda (RW)|Saint Helena and Dependencies (SH)|Saint Kitts and Nevis (KN)|"& "Saint Lucia (LC)|Saint Pierre and Miquelon (PM)|Saint Vincent and the Grenadines (VC)|Samoa (WS)|San Marino (SM)|"& "Sao Tome and Principe (ST)|Saudi Arabia (SA)|Senegal (SN)|Serbia and Montenegro (CS)|Seychelles (SC)|Sierra Leone (SL)|"& "Singapore (SG)|Slovakia (SK)|Slovenia (SI)|Solomon Islands (SB)|Somalia (SO)|South Africa (ZA)|"& "South Georgia and South Sandwich Islands (GS)|South Korea (KR)|Spain (ES)|Spratly Islands (PI)|Sri Lanka (LK)|"& "Sudan (SD)|Suriname (SR)|Svalbard and Jan Mayen (SJ)|Swaziland (SZ)|Sweden (SE)|Switzerland (CH)|Syria (SY)|Taiwan (TW)|"& "Tajikistan (TJ)|Tanzania (TZ)|Thailand (TH)|Togo (TG)|Tokelau (TK)|Tonga (TO)|Trinidad and Tobago (TT)|Tunisia (TN)|"& "Turkey (TR)|Turkmenistan (TM)|Turks And Caicos Islands (TC)|Tuvalu (TV)|Uganda (UG)|Ukraine (UA)|United Arab Emirates (AE)|"& "United Kingdom (UK)|United Nations Neutral Zone (XD)|United States (US)|United States Minor Outlying Islands (UM)|"& "Uruguay (UY)|US Virgin Islands (VI)|Uzbekistan (UZ)|Vanuatu (VU)|Vatican City (VA)|Venezuela (VE)|Vietnam (VN)|"& "Wallis and Futuna (WF)|Western Sahara (EH)|Yemen

Error: Unterminated string.

still appears when the obfuscated script is ran trough it.

Try with the last example I posted.

This is the limitation within autoit3/aut2exe with a max line length of 4095.

from the helpfile: Maximum length of a single script line: 4,095

Edited by Jos

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#53 ·  Posted

This is the limitation within autoit3/aut2exe with a max line length of 4095.

from the helpfile: Maximum length of a single script line: 4,095

Yeap, I'm aware of this limitation, that's why I posted my next post. :)

The problem is that in this particular situation, this long line is generated by the Obfuscator. The initial code (before obfuscation that is) is compiling just fine with Aut2Exe.

In this particular case it is easy to fix this problem, by using the BrewManNH's approach, because the line contains a long string. But in some cases this approach may not be suitable and the obfuscation with /MO may generate similar long lines and making the code uncompilable, even though the initial source is compilable.

Share this post


Link to post
Share on other sites

#54 ·  Posted

It would be trivial to replace line continuations with &= (don't event need to assign diff vars and concat them):

$var = "string part one"
$var &= " string part two"
$var &= " string part three"

Share this post


Link to post
Share on other sites

#55 ·  Posted

It seems that there is a max input record length for AUT2EXE of 4095 but internal processing doesn't have this limit.

Only option I can think of is that Obfuscator will not merge the lines of the sourcefile that is being processed by aut2exe and creates a second file that will mimic what aut2exe does internally and call that Scriptname_something-else.au3

Jos


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#56 ·  Posted

I decided not to make a separate file but to avoid creating a longer sourcefile record in the latest uploaded Beta version of Obfuscator.

This means that when you have a continuationline which is combined longer than 4095, Obfuscator will merge with a max length of 4095 thus creating multiple lines and in that case the linenumbers will not match anymore.

A warning will be displayed of this fact:

-Line: 4. Encountered a continuationline which would be longer than 4095 when merge into 1 line, so spliting this continuation line into multiple lines..

1 person likes this

Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#57 ·  Posted

Jos,

once again, a huge THANK YOU for your efforts and for the /MO Obfuscator option.

This final Beta works like a charm! :)

I consider My Goal in the first post achieved and I'll update the topic name, adding (RESOLVED) at the end.

I'll also prepare a detailed explanation for the others who may encounter this issue and update my first post, so they won't have to go through all 57 posts to find the solution. ;)

And many thanks to all others, who took part in the process of achieving this goal!

Share this post


Link to post
Share on other sites

#58 ·  Posted

Hmm, I thought I'll be able to change the topic title as an author, but I can't find this option.

I would like to ask someone from the moderators or admins group to add a "(RESOLVED)" at the end of the topic title.

Thank you. :)

Share this post


Link to post
Share on other sites

#59 ·  Posted

I have changed it for you. Believe you should be able to change it as well, but not sure how things look for you.


Visit the SciTE4AutoIt3 Download page for the latest versions        Beta files                                                          Forum Rules
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Share this post


Link to post
Share on other sites

#60 ·  Posted

dv8,

Edit the first post and select the "Use Full Editor" option - that allows editing of the title as well as the text. :)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • WalterBaeckelmans
      _AD_Open() error
      By WalterBaeckelmans
      I use _AD_Open() in a script and a strange thing happens. The first time I logon to a computer with an active directy user login the _AD_Open() function gives @error=4 with no description of the @extended error. It just says LDAP Provider generated the error. When I log off the workstation and than log on with the same user login name the function _AD_Open() works perfectly. It seems that if the workstation has a profile of the user on the local PC, _AD_Open() works correctly but if the profile of the login user does not yet exist it gives the error. Any suggestions? I would like to make it work the first time a user logs on on a not yet used workstation. Much thx in advance for your advice.
      P.S. I love the AD-extensions to Autoit; they work prefectly in the (mostly logon ) tools I've written for our domain workstations.
    • Reizvoller
      Subscript Used on Non-Accessible Variable WinGetPos error
      By Reizvoller
      Func workSpaceSetup () ConsoleWrite ("workSpaceSetup" &@CRLF) $workSpace = WinGetHandle ("some site - Google Chrome") ConsoleWrite ($workSpace&@CRLF) $pos1 = WinGetPos ($workSpace) WinMove ($workSpace , "", $pos1[0] , $pos1[1] , 1366, 768, 0) EndFunc So the script is first, the error I get is second in the quote.
      This is one function of many for an app I am building but it is the first one that runs so I know there aren't other things at play here.
      The idea is to keep the window in the same space it is when the script runs but just resize it as this app is used across multiple computers with different screen resolutions.
      Could someone please elaborate upon what "Subscript used on non-accessible variable" means? 
      Oh and the variable is declared as "Global $pos1 = 0" at the top outside of any functions with the other global variables.
      Any advice would be greatly appreciated!
      -Reiz
    • Reizvoller
      FileWriteLine error in expression
      By Reizvoller
      Howdy!
      I am trying to do something a little whacky but here's the function that's kicking back an error.
      I am fairly sure I am overlooking a simple error but I am not seeing it.
      Func mouseSpot () Global $mouseSpot = MouseGetPos() ConsoleWrite ($mouseSpot[0] & ", " & $mouseSpot[1] & @CRLF) FileWriteLine ("mouseGrabs.txt" , "MouseClick ('"'primary'"' , $mouseSpot[0] , $mouseSpot[1], 1, 10)" ) EndFunc The error displays as this 
      Any thoughts?
      Thanks!
      -Reiz
    • way1000
      array variable error
      By way1000
      i have a script that works but gives results and errors randomly

      #include <GUIConstantsEx.au3> #include <EditConstants.au3> #include <StaticConstants.au3> #include <File.au3> #include <Date.au3> Global $result1s[5]=["a", "b", "c", "d", "e"] Global $result2s[19]=["text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9", "text10", "text11", "text12", "text13", "text14", "text15", "text16", "text17", "text18", "text19"] Global $result3s[19]=["text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9", "text10", "text11", "text12", "text13", "text14", "text15", "text16", "text17", "text18", "text19"] Global $result4s[19]=["text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9", "text10", "text11", "text12", "text13", "text14", "text15", "text16", "text17", "text18", "text19"] Global $result5s[19]=["text1", "text2", "text3", "text4", "text5", "text6", "text7", "text8", "text9", "text10", "text11", "text12", "text13", "text14", "text15", "text16", "text17", "text18", "text19"] _Main() Func _Main() Local $button1 Local $output, $die, $msg, $results1, $results2, $results3, $results4, $results5 Local $file = FileOpen("test.txt", 1) GUICreate("test", 600, 200, -1, -1) $button1 = GUICtrlCreateButton("Result", 460, 110, 50, 30) $output1 = GUICtrlCreateInput("", 60, 10, 450, 20, BitOR($ES_CENTER, $ES_READONLY)) GUICtrlCreateLabel("1", 5, 12) $output2 = GUICtrlCreateInput("", 60, 30, 450, 20, BitOR($ES_CENTER, $ES_READONLY)) GUICtrlCreateLabel("2", 5, 12) $output3 = GUICtrlCreateInput("", 60, 50, 450, 20, BitOR($ES_CENTER, $ES_READONLY)) GUICtrlCreateLabel("3", 5, 32) $output4 = GUICtrlCreateInput("", 60, 70, 450, 20, BitOR($ES_CENTER, $ES_READONLY)) GUICtrlCreateLabel("4", 5, 52) $output5 = GUICtrlCreateInput("", 60, 90, 450, 20, BitOR($ES_CENTER, $ES_READONLY)) GUICtrlCreateLabel("5", 5, 72) GUICtrlCreatePic("", 0, 0, 600, 200) GUICtrlCreateLabel("Sample Pic", 75, 1, 53, 15) GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT) GUICtrlSetColor(-1, 0xFFFFFF) $die = GUICtrlCreateLabel("", 700, 500, 700, 20, $SS_SUNKEN) GUICtrlSetFont($output, 8, 800, "", "Verdana") GUISetState() ; Run the GUI until the dialog is closed While 1 $msg = GUIGetMsg() Select Case $msg = $button1 $results1 = Random(1, 5, 1) GUICtrlSetData($output1, $result1s[$results1]) $read1 = GUICtrlRead($output1) $results2 = Random(1, 19, 1) GUICtrlSetData($output2, $result2s[$results2]) $read2 = GUICtrlRead($output2) $results3 = Random(1, 19, 1) GUICtrlSetData($output3, $result3s[$results3]) $read3 = GUIctrlRead($output3) $results4 = Random(1, 19, 1) GUICtrlSetData($output4, $result4s[$results4]) $read4 = GUICtrlRead($output4) $results5 = Random(1, 19, 1) GUICtrlSetData($output5, $result5s[$results5]) $read5 = GUICtrlRead($output5) FileWriteLine($file, _NowDate()& " " & _nowTime() & " " &$read1) FileWriteLine($file, _NowDate()& " " & _nowTime() & " " &$read2) FileWriteLine($file, _NowDate()& " " & _nowTime() & " " &$read3) FileWriteLine($file, _NowDate()& " " & _nowTime() & " " &$read4) FileWriteLine($file, _NowDate()& " " & _nowTime() & " " &$read5) FileClose($file) EndSelect If $msg = $GUI_EVENT_CLOSE Then ExitLoop WEnd EndFunc ;==>_Main  
       
      how to fix it?
    • DCCD
      FTP full error reporting
      By DCCD
      Hi, how to get full error reporting if FTP failed?
       
      tried  _WinAPI_GetLastErrorMessage() func but That didn't help at all.  the information was returned by _WinAPI_GetLastErrorMessage() can't help me!
       
       
      _FTP_Open, return Success: a handle, Failure: 0 and sets the @error flag to non-zero
      _FTP_Connect,  return Success: an handle to connected session. Failure: 0 and sets the @error flag to non-zero.
      _FTP_DirCreate, return Success: 1. Failure: 0.
      _FTP_FilePut, return Success: 1. Failure: 0 and sets the @error flag to non-zero.
       
      Any help would be much appreciated