Anzeigen der neuesten Beiträge
0 Mitglieder und 1 Gast betrachten dieses Thema.
AutoIt:Removed: PluginOpen() and PlugInClose() removed to due to not being used and never having progressed past the experimental stage.Changed: Removed Windows 2000 support. Minimum supported OS is now Windows XP RTM / Windows Server 2003.Changed: upx.exe from 3.07 -> 3.91.Changed: PCRE regular expression engine updated to 8.33.Changed: Default newline character for PCRE regexes changed to ANYCRLF.Changed: ReDim works on arrays declared as static.Changed: Run-time errors on objects no longer fatal (execution of the script is not halted).Changed: Allowing multiple COM Error Handlers. Last one registered and alive gets called.Changed: VT_NULL VARIANT converts to Null keyword (previously empty string).Changed: Default manifest file on AutoIt and compiled exes is set for "AsInvoker" and tagged with compatibility for Vista/Win7/Win8 and Win8.1.Changed: #NoAutoIt3Execute option replaced with #pragma compile(AutoItExecuteAllowed, false). Default is false.Changed: IsAdmin() function changed to be based on token membership. Maybe more acurate for Sandbox type environments.Changed: ShellExecute() will return the process ID.Added: DriveGetType() updated so that it can detect SSD, and also bus types (SATA, USB, etc.).Added: Interpreter accepts 64bit hex numbers.Added: Keyword Null.Added #488: Third parameter for ObjGet() function to specify object instance.Added: Compound assignment operators for object properties.Added #1191: Explicit size of arrays optional for explicit initialization.Added: Array access on expression: StringSplit("a,b", ",")[1]Added: Dot access on expression: ObjCreate("Shell.Application").GetSystemInformation("DirectoryServiceAvailable")Added: Empty arrays.Added: Functions can now be referenced in variables and the function can be called through the variable.Added: FuncName().Added: Built-in functions that take a callback now be passed directly in addition to the old method of passing as a string. Built-in functions can also be passed now (be careful that the function you pass matches what the caller expects).Added: C++ style ternary operators: Local $fResult = ("foo" = "bar") ? True : FalseAdded: Expression as default function parameter.Added: With...EndWith can be used on expressions having dot-access.Added: Nested "With...EndWith".Added: Call() calls built-in functions.Added: ByRef with Call() function.Added: Support for more COM VARIANT types.Added: @OSVersion supports Windows 8.1 and Windows 2012 R2.Added: Regular expressions (PCRE engine) now using the new native 16bit mode and also compiled with full UCP support. Prefix patterns with (*UCP) to enable.Added: @LocalAppDataDir for local AppData (@AppDataDir is the roaming location)Added: StringReverse() - a UTF16 compatible string reversal function.Added: FileReadToArray() - native version of _FileReadToArray().Added #2358: FileInstall() accepts @ScriptFullPath as the first parameter to allow easy inclusion of the script source.Added #2433: Monospaced in Fonts appendix.Fixed #2067: -2147483648 not stored as int32.Fixed #2003: ProcessWaitClose() using too much CPU.Fixed #2076: COM VARIANT not correctly set for boolean True.Fixed #2015: DllCallbackRegister() mangles floating point numbers under x64.Fixed: x64 DllCall not setting double type parameters correctly.Fixed: DllCallbackRegister() not returning floating point types correctly.Fixed: Different issues with Static keyword.Fixed #2078: Error in com expression.Fixed #2073: Unexpected termination with ContinueLoop.Fixed #1485: Unexpected termination with ContinueCase.Fixed: Crash in ObjEvent() for ByRef object parameters.Fixed #2068: Repeated calls to Acos() no longer produce strange results. NOTE: This fix increases the size of AutoIt by approximately 60KB.Fixed: ObjGet() fails validating class identifier properly when first parameter for the function is specified.Fixed #2111: RunAs() could fail even if a user had the correct permissions to use it.Fixed #1395: DLLCallbacks on Exit.Fixed: Ptr() returns null pointer for objects.Fixed #1319: Hang at exit for RichEdit user controls.Fixed #2138: Fixed GUICtrlRead() on dummy controls was corrupting strings and possibly crashing AutoIt.Fixed #1760: #OnAutoItStartRegister ignores single quoted function names.Fixed #2146: Crash when closing AutoIt when started from a console window.Fixed: DLLStruct type forgotten in comparison operations.Fixed: "struct" type parameter in DllCall() overwrites possibly following parameters.Fixed #1566: Array as its own element issue.Fixed #1551: Crash the script when changing array.Fixed: ReDim allows initialization to non-array.Fixed #2166: StringToASCIIArray() and StringFromASCIIArray() did not correctly return an empty string when the start index is greater than the end index.Fixed #1901: 32-bit compiled scripts now work from the system32 directory on 64-bit Windows.Fixed #2157: ProcessList() would crash if there were more than 512 running processes.Fixed #2215: Bad syntax check for default function parameters.Fixed #2222: Non-ASCII characters not allowed in object properties/methods.Fixed #2235: ProcessGetStats() defaulted to using the current process if an invalid process was specified.Fixed #2253: Ping() returns success with no connection.Fixed #1498: #RequireAdmin endless loop for disabled UAC.Fixed #1698: GUICtrlSetLimit(), limit 32767Fixed: Subtle bugs with Ping()Fixed #2286: GUICtrtlGetState() without a controlID parameter runs but aborts AutoIt.Fixed #2350: Strange issue when using $SS_ETCHEDVERT and $SS_ETCHEDHORZ.Fixed #2311: Wrong handling of casesense parameter in StringReplace()Fixed #2361: RegRead() doesn't read REG_QWORD values.Fixed #2362: WinGetText() and ControlGetText() would sometimes give invalid results due to the target application's handling of WM_GETTEXT.Fixed #2075: GUICtrlSetImage() changes icon position on resizable window.Fixed #1667: WinMove() Child window.Fixed #2367: Sometimes two COM objects wouldn't be classed as equal during comparisons.Fixed #1024: GUICtrlSetTip() for tabitems sets incorrectly in certain situations.Fixed #2366: For loop not working as expected.Fixed #2384: UDPRecv() and TCPRecv() not setting @error correctly in some instances.Fixed #2314: Cursor flickers when moving over certain GUI controls.Fixed #2066: DllStructSetData() returning int64 instead of int32 in some cases.Fixed #2427: ControlTreeView() does not used Option2.Fixed #2105: RegRead() and DWORD types incorrectly stored as double.Fixed #2299: GUI Button Text Left-Justify for colored button.Fixed #1954: ListViewItem returns 0 (failure) even though it populates the ListView.Fixed #2152: X^2 Not Working in Hex().Fixed #1870: @GUI_DragFile.Fixed #2461: GUICtrlSetImage doesn't handle certain types of .gif file.Fixed #2167: $WS_EX_LAYOUTRTL and GUICtrlCreateMenu causes bug.Fixed #2468: #OnAutoItStartRegister function doc precision.Fixed #2315: @OSVersion WIN_2012 support.Fixed #2171: TCPTimeout inconsistent.Fixed #2518: Static keyword not working correctly.Fixed: StringStripCR() and StringAddCR() not working with strings that contain nulls.UDFs:Removed #2174: Explicitly checking if the source and insert strings for _StringInsert() were strings and forcing an @error return value. (@error values 2 and 3 have been removed, please check the documentation.)Removed #2187: Forcing _GUICtrlRichEdit_Create() to create a richedit control in a positive position. (@error values 103 and 104 have been removed, please check the documentation.)Removed #2172: Select...EndSelect statement from _StringRepeat() and replaced with an If...EndIf as well as optimised the code.Removed: Documentation and example for _Iif(). Scripts should be updated to use ternary operators instead.Removed: Documentation and example for _StringEncrypt(). Scripts should be updated to use the Crypt functions instead. Look at _Crypt_EncryptData() for an alternative example.Removed: _ArrayCreate() from Array.au3.Removed: Function headers in the UDFs, as information about the function can be found in the help file, This removal resulted in a 32.23% size reduction to the includes folder (7.01MB ->> 4.40MB).Removed: Documentation and example for _StringReverse(). Scripts should be updated to use the native function StringReverse() instead.Removed: $tagGDIPPENCODERPARAMS (duplicate of $tagGDIPENCODERPARAMS).Changed #2117: _FileCountLines() writing to a temporary array to calculate the number of lines in a file.Changed: _FileListToArray() to accept the Default keyword to use the default parameters.Changed: _FileReadToArray() to parse the file using a regular expression. Now various line endings (not recommended) are displayed correctly in the array.Changed: Word UDF was completely re-written. Function names changed from _Word* to _Word_*. THIS IS A SCRIPT BREAKING CHANGE.Changed: _Max() and _Min() functions now use the ternary operator.Changed: Re-wrote _ReplaceStringInFile() by removing the need to write to a temporary array. (@error values 4, 5 and 6 have been removed, please check the documentation.)Changed: Re-wrote _GetIP() for improved efficency and added http://www.myexternalip.com/raw to find the external IP address.Changed: _SQLite 3.7.2.0 -> 3.8.2.0.Changed: IE3.au3 v3.0-0 to v3.0-1 (see header info for changes).Changed: Array UDF now takes into consideration empty arrays.Changed: Re-wrote _ProcessGetName() for speed enhancements.Changed: Re-wrote _PathSplit() by using a regular expression. Contributed by DXRW4E.Changed: _GDIPlus_GraphicsGetSmoothingMode(), _GDIPlus_GraphicsSetSmoothingMode() functions.Changed: _FileWriteToLine() can read a file with various line endings (not recommended).Changed: $tagGDIPENCODERPARAMS using $tagGDIPENCODERPARAM.Changed: _GDIPlus...() using integer or float for positioning.Changed: Modified _ArrayUnique() with a faster version and improved error checking.Changed: $INTERNET_FLAG_NO_CACHE_WRITE default value for _FTP_ListToArray*().Changed: _ArrayDisplay() - new function with new functionalities.Changed: GUIListView - new _Delete* functions.Added: _WinAPI_GetProcAddress() function.Added #2126: Documentation remark about _ArrayDisplay() being able to display a maximum of 65530 items.Added #1158: WinAPIEx integrated, split under WinAPI*.au3.Added #2250: DirMove() to the related section of DirCopy().Added #2155: Missing documentation for the default working directory of Run() / RunWait().Added #2224: Optional parameter to _FileReadToArray() to return the array count in the first element.Added #2114: Disabling and enabling the redrawing message to increase the speed of displaying _ArrayDisplay(). (Only noticeable on large arrays.)Added #2120: Disabling and enabling the redrawing message to increase the speed of deleting items with _GUICtrlListView_DeleteAllItems(). (Only noticeable when deleting many items in a ListView.)Added #966: Optional parameter to return the full path of the file/folder in _FileListToArray().Added #2193: _StringTitleCase(), to create a title case string.Added #2263: _Crypt_GenRandom(), fills a buffer with random data.Added #2354: _ArrayTranspose() to the Array UDF.Added #2338: Regular expression pattern matching. See the documentation of _ArraySearch() for more details.Added #2340: Optional parameter to _GUICtrlListView_SimpleSort() of whether or not to reverse $vSortSense (previously $vDescending.)Added: _FileListToArrayRec() to the UDFs. A recursive file search by Melba23. See the documentation for more details.Added: Example for _VersionCompare().Added: Graphic SmoothingMode constants (GDIPlusConstants).Added: _GDIPlus_CustomLineCapCreate(), _GDIPlus_BitmapCreateFromScan() functions.Added: Constants for DriveGetType() and StringSplit(). See related function documentation for more details.Added: InetConstants.au3 for use with Inet functions. See related function documentation for more details.Added: GDIPlus functions and their respective documentation and example.Added: _GDIPlus_ParamSize() to handle X64 compatibility.Added #2540: _ArrayDisplay() can copy Header and Row.Fixed #2077: hwnd safety check in _GUICtrlRichEdit_Create()Fixed #2088: _ArrayDisplay() not handling Default parameters correctly.Fixed #2112: "Report Log Window" unresponsive when the script is closed.Fixed: _GUICtrlRichEdit_* documentation error return codes.Fixed #1970: _FTP_ListToArray() fails to retrieve Dir or File only.Fixed #2084: Clipboard not being closed if an error occurred with _ClipBoard_SetDataEx().Fixed #2125: Writing a 2-dimensional array would only write the first two columns of the array.Fixed #2070: Unexpected crash on certain systems when using _GUICtrlStatusBar_GetText().Fixed #2132: Documentation of _WinAPI_GetModuleHandle() and the parameter to return the handle of the calling process. (Use the Null keyword, not 0.)Fixed #2162: Documentation link in the IE Management section was broken for _IEFormElementCheckBoxSelect().Fixed #2170: _ArrayDisplay() fails handling arrays with no elements.Fixed: _PathMake() not appending backslash to the root path.Fixed #2223: Incorrect UDF being referenced in _WordErrorHandlerRegister().Fixed #2252: _GUICtrlListView_DeleteAllItems() failed to remove items created using _GUICtrlListView_AddItem() on an AutoIt native listview.Fixed #1861: _ArrayDisplay() incorrectly displayed an array when using the $sHeader parameter and the array contained the default separator.Fixed: Using non-supported characters in the file prefix for _TempFile().Fixed #2186: Documentation of _WinNet_AddConnection()* and $sLocalName. (Use the Null keyword or an empty string, not 0.)Fixed #2148: Crash when passing a number instead of a string.Fixed #2219: _ExcelReadSheetToArray() would cause AutoIt to hang when reading a protected worksheet.Fixed #2242: Unable to write the 0th element in _FileWriteFromArray(). Now the Default keyword is supported for the parameters $iBase and $iUBound, therefore use this instead of the value 0 for default parameters. (Please check the documentation.)Fixed #2218: AutoIt crash when using _GUICtrlListView_SetGroupInfo() before _GUICtrlListView_SetItemGroupID() had been called.Fixed #1996: _GUICtrlListView_SimpleSort() failed to retain the ItemParam of an item.Fixed #1759: Strange listview sort.Fixed #2298: Failing to detect when EnumDisplayDevices returns 0.Fixed: _FileWriteFromArray() failing to pass the $aArray parameter as a constant reference.Fixed: $tagREBARBANDINFO not working on XP, due referencing parameters intended for Vista and above.Fixed #2305: Reports the wrong width and height of the desktop when using default parameters.Fixed #2335: _WinAPI_EnumWindows() and _WinAPI_EnumWindowsPopup() orderFixed #2347: _WinAPI_GetMonitorInfo() wrong data.Fixed #2320: Incorrect return values for certain IE functions.Fixed: _GUICtrlListView_InsertItem() would fail to insert -1 if passed as the $sText parameter.Fixed #2460: _StringBetween() $sStart = $sSend.Fixed #2459: _StringBetween() doc Description info.Fixed #2465: _IEPropertyGet() - out of date links in "ClientInfo Properties".Fixed: _GDIPlus_...() functions compatible with X64.Fixed #2486: _GUICtrlRichEdit_GetFont() bad multi Font return. Solved also #2485.Fixed #2492: _GUIToolbar_... doc example.Fixed: _SQLite_...() running in X64 Mode.Fixed: _SQLite_Startup() parameter checking and doc.Fixed #2550: _GUICombo_GetEditText() struct sizing.AutoItX:Removed: Removed DevC files and Visual Studio 6 files.Removed: ANSI versions of Send/WinWait functions from the native DLL.Removed: DLL Imports: AU3_WinGetPosX, AU3_WinGetPosY, AU3_WinGetPosWidth, AU3_WinGetPosHeight.Removed: DLL Imports: AU3_ControlGetPosX, AU3_ControlGetPosY, AU3_ControlGetPosWidth, AU3_ControlGetPosHeight.Removed: DLL Imports: AU3_MousePosX, AU3_MouseGetPosYRemoved: DLL Imports: AU3_WinGetClientSizeWidth, AU3_WinGetClientSizeHeight.Removed: DLL Imports: AU3_WinGetCaretPosX, AU3_WinGetCaretPosY.Removed: DLL Imports: AU3_CDTray, AU3_BlockInput.Removed: DLL Imports: AU3_RunAsSet.Removed: COM Methods: CDTray, BlockInput.Removed: COM Methods: RunAsSet.Removed: All registry functions. The support was limited and the host language will certainly have registry functions.Removed: All Ini file functions. As per registry functions.Changed: Renamed AutoIt3.h to AutoItX3_DLL.h.Added: AutoItX3.Assembly.dll - a .NET Assembly wrapper for the DLL.Added: AutoItX3.PowerShell.dll and AutoItX3.psd1 - a set of PowerShell CmdLets.Added: Visual Studio 2010 C++ Project files (easy to use in 2010 or later).Added: DLL Import: AU3_WinGetPos.Added: DLL Import: AU3_ControlGetPos.Added: DLL Imports: AU3_MouseGetPos.Added: DLL Import: AU3_WinGetClientSize.Added: DLL Import: AU3_WinGetCaretPos.Added: DLL Imports: AU3_RunAs, AU3_RunAsWait.Added: COM Methods: RunAs, RunAsWait.Fixed: Crash in AU3_PixelSearch when function fails.Fixed: AutoItX3.lib files weren't correctly being copied to the install file.Au3Check:Changed: Message case changed to support SciTE inline errors.Changed: An error is now generated for non-supported file encodings (Previous behavior was to silently pass the script).Changed: Au3Check version numbers now match AutoIt's.Changed: Explicit size of arrays optional for explicit initialization.Added: Generating error for hex numbers longer than 16 characters.Added: Compound assignment operators for object properties.Added: Array access on expressionAdded: Dot access on expressionFixed #2113: Object's properties in names of keywords treated as keywords.Fixed #2141: #IgnoreFunc was generating an incorrect error.Others:Added: Notepad++ autoit.xml file to the Extras\Editors folder. This contains a list of up to date functions.Added: Sublime Text AutoIt.tmLanguage file to the Extras\Editors folder. This contains a list of up to date functions.Added: 3rd party syntax files in Extras\Editors now include UDF functions.Fixed: StringRegExpGUI missing from the help file index menu.Au3Record:Fixed #2083: There is no longer an error about a missing DLL.Fixed #2337: Support of non english keyboard.AutoIt3Help:Changed: Manifest resource suggests Windows common controls v6.0.Changed: Version number to 1.0.0.5.Fixed #2519: Wrong page opening if launch without parameter.
Maintainers:The .cfg files are needed by cppcheck. Either put them in a subfolder cfgwhere the binary is. Otherwise compile cppcheck with CFGDIR to specify anarbitrary path where you put the .cfg files.New check:* Using pointer addition result in condition 'if (p+1)' - either a dereferenceis forgotten or it depends on UB (the result is only 0 if there is overflow,which is UB).Improved checks:* Leaks - ignoring return value of allocation function* Uninitialized vars - check how uninitialized malloc data is used* Rewritten 'calculation in sizeof' using syntax tree* Rewritten 'clarify calculation' using syntax tree* Rewritten 'logical disjunction' using syntax tree* Rewritten 'duplicate expressions' using syntax tree* Rewritten 'invalidFunctionUsage' that uses the *.cfg filesGUI:* Library files can be enabled in the project dialog* Suppressions can be specified in the project dialogOther:* Cppcheck is now continuosly scanning all the source code in the debian archive.Results: http://cppcheck.sourceforge.net/devinfo/daca2-report/daca2.html* Fixes of templates handling, hangs, crashes and false positives