wolf9228 Posted February 5, 2013 Share Posted February 5, 2013 (edited) No need anymore to use AutoIt3Wrapper This script allows updating resource Of Autoit executable file script File ResUpdate.zip BeginUpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648030%28v=vs.85%29.aspx UpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648049%28v=vs.85%29.aspx EndUpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648032%28v=vs.85%29.aspx ResUpdate.au3 expandcollapse popup#Include <WinAPI.au3> #include <Memory.au3> #include <File.au3> ; No need anymore to use AutoIt3Wrapper ;This code allows updating resource Of Autoit executable file $DataStruct = StringToDataStruct("0123456789") $hUpdateArray = BeginUpdateResource("Autoit_WithOut_Upx.exe") if @error Then Exit ;Autoit_WithOut_Upx.exe compression WithOut UPX UpdateResource($hUpdateArray,DllStructGetPtr($DataStruct),DllStructGetSize($DataStruct),"str","str") if @error Then Exit EndUpdateResource($hUpdateArray) if @error Then Exit MsgBox(0,"MSG","Was successfully updated resource") $HModule = _WinAPI_LoadLibrary("Autoit_WithOut_Upx.exe") ; $DataStruct = ResGet("str","str",-1,$HModule) if @error Then Exit $StringStruct = DllStructCreate("char[" & @extended & "]",DllStructGetPtr($DataStruct)) MsgBox(0,"MSG","Was successfully Get resource") MsgBox(0,"Res Data",DllStructGetData($StringStruct,1)) _WinAPI_FreeLibrary($HModule) ResUpdateBitmap("bmp.bmp","Autoit_WithOut_Upx.exe",1) if @error Then Exit MsgBox(0,"MSG","Was successfully updated Bmp resource") $HModule = _WinAPI_LoadLibrary("Autoit_WithOut_Upx.exe") ; $DataStruct = ResGet(1,2,-1,$HModule) if @error Then Exit MsgBox(0,"MSG","Was successfully Get Bmp resource") _WinAPI_FreeLibrary($HModule) Func ResUpdateBitmap($BmpFileName,$Dll_Exe_File,$lpName,$wLanguage = 0,$DelExRes = False) ; $BmpFileName Can Be Null Or Zero To Delete specified Resource Local $DataStruct = 0 if IsString($BmpFileName) Then $DataStruct = FileToDataStruct($BmpFileName,2,14) if @error Then Return SetError(1,0,False) Else if $BmpFileName <> 0 Then Return SetError(1,0,False) EndIf $hUpdateArray = BeginUpdateResource($Dll_Exe_File,$DelExRes) if @error Then Return SetError(2,0,False) if IsString($lpName) Then $lpName = StringUpper($lpName) UpdateResource($hUpdateArray,DllStructGetPtr($DataStruct),DllStructGetSize($DataStruct),2,$lpName) if @error Then Return SetError(3,0,False) EndUpdateResource($hUpdateArray) if @error Then Return SetError(4,0,False) Return True EndFunc Func BeginUpdateResource($Dll_Exe_File,$DelExRes = False) Local $RtImageArray = ExtractPEImage($Dll_Exe_File) if @error Then Return SetError(1,0,0) Local $hFileA = $RtImageArray[0][0]; Dll_Exe_File File Local $hFileB = $RtImageArray[1][0] ; PEImage File Local $PEImage = $RtImageArray[1][1] ; PEImage File Local $hFileC = $RtImageArray[2][0] ; SurplusData File Local $SurplusData = $RtImageArray[2][1] ;SurplusData File _WinAPI_CloseHandle($hFileB) Local $HANDLE = DllCall("kernel32.dll","ptr","BeginUpdateResourceW","wstr",$PEImage,"BOOL",$DelExRes) if @error Or $HANDLE[0] = 0 Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileC) Return SetError(2,0,0) EndIf Dim $hUpdateArray[2] $hUpdateArray[0] = $HANDLE[0] $hUpdateArray[1] = $RtImageArray Return $hUpdateArray EndFunc Func UpdateResource($hUpdateArray,$lpData,$cbData,$lpType,$lpName,$wLanguage = 0,$DelExRes = False) if Not IsArray($hUpdateArray) Or UBound($hUpdateArray) < 2 Then Return SetError(1,0,False) Local $hUpdate = $hUpdateArray[0] , $DataType1 = "long" , $DataType2 = "long" if IsString($lpType) Then $DataType1 = "wstr" $lpType = StringUpper($lpType) EndIf if IsString($lpName) Then $DataType2 = "wstr" $lpName = StringUpper($lpName) EndIf Local $BOOL = DllCall("kernel32.dll","BOOL","UpdateResourceW","HANDLE",$hUpdate,$DataType1 _ ,$lpType,$DataType2,$lpName,"WORD",$wLanguage,"ptr",$lpData,"DWORD",$cbData) if @error Or $BOOL[0] = 0 Then Return SetError(2,0,False) Return True EndFunc Func EndUpdateResource($hUpdateArray,$fDiscard = False) if Not IsArray($hUpdateArray) Or UBound($hUpdateArray) < 2 Then Return SetError(1,0,False) Local $hUpdate = $hUpdateArray[0] ,$RtImageArray = $hUpdateArray[1] Local $UB1 = UBound($RtImageArray) , $UB2 = UBound($RtImageArray,2) if Not IsArray($RtImageArray) Or $UB1 < 3 Or $UB2 < 2 Then Return SetError(2,0,False) Local $hFileA = $RtImageArray[0][0]; Dll_Exe_File File Local $Dll_Exe_File = $RtImageArray[0][1]; Dll_Exe_File File Local $hFileB = $RtImageArray[1][0] ; PEImage File Local $PEImage = $RtImageArray[1][1] ; PEImage File Local $hFileC = $RtImageArray[2][0] ; SurplusData File Local $SurplusData = $RtImageArray[2][1] ;SurplusData File $BOOL = DllCall("kernel32.dll","BOOL","EndUpdateResourceW","HANDLE",$hUpdate,"BOOL",$fDiscard) if @error Or $BOOL[0] = 0 Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileC) Return SetError(3,0,False) EndIf if ($fDiscard) Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileC) Return True EndIf Local $hFileB = _WinAPI_CreateFile($PEImage,2,6) if ($hFileB = 0) Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileC) Return SetError(4,0,False) EndIf Local $NewFileSize = _WinAPI_GetFileSizeEx($hFileB) Local $SurplusDataSize = _WinAPI_GetFileSizeEx($hFileC) if ($SurplusDataSize) Then Local $tagSurplusDataData = "BYTE[" & $SurplusDataSize & "]" ReadFromWriteTo($hFileC,0,$hFileB,$NewFileSize,$tagSurplusDataData) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(5,0,False) EndIf EndIf _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) if Not (FileCopy($PEImage,$Dll_Exe_File,1)) Then Return SetError(6,0,False) Return True EndFunc Func ExtractPEImage($Dll_Exe_File) Local $hFileA = _WinAPI_CreateFile($Dll_Exe_File,2,2) if ($hFileA = 0) Then Return SetError(1,0,0) Local $PEImage = _TempFile() , $SurplusData = _TempFile() ;$PEImage // Dll Image File Or Exe Image File ;$SurplusData // File Of AutoitScript Code Or File Of SurplusData Data Local $hFileB = _WinAPI_CreateFile($PEImage ,1,6) if ($hFileB = 0) Then _WinAPI_CloseHandle($hFileA) Return SetError(2,0,0) EndIf Local $hFileC = _WinAPI_CreateFile($SurplusData,1,6) if ($hFileC = 0) Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) Return SetError(3,0,0) EndIf Local $tagIMAGE_DOS_HEADER = "BYTE[60];dword lfanew" Local $IDH = ReadFromWriteTo($hFileA,0,$hFileB,0,$tagIMAGE_DOS_HEADER) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(4,0,0) EndIf Local $MovePos = DllStructGetData($IDH,"lfanew") Local $tagSignature = "dword Signature" Local $Sge = ReadFromWriteTo($hFileA,$MovePos,$hFileB,$MovePos,$tagSignature) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(5,0,0) EndIf $MovePos += DllStructGetSize($Sge) Local $tagIMAGE_FILE_HEADER = "ushort Machine;ushort NumberOfSections;BYTE[16]" Local $IFH = ReadFromWriteTo($hFileA,$MovePos,$hFileB,$MovePos,$tagIMAGE_FILE_HEADER) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(6,0,0) EndIf Local $NumberOfSections = DllStructGetData($IFH,"NumberOfSections") $MovePos += DllStructGetSize($IFH) Local $tagIMAGE_OPTIONAL_HEADER = "BYTE[60];dword SizeOfHeaders;BYTE[160]" Local $IOH = ReadFromWriteTo($hFileA,$MovePos,$hFileB,$MovePos,$tagIMAGE_OPTIONAL_HEADER) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(7,0,0) EndIf Local $SizeOfHeaders = DllStructGetData($IOH,"SizeOfHeaders") $MovePos += DllStructGetSize($IOH) Local $InfoArray[$NumberOfSections][3] Local $IMAGE_SIZEOF_SHORT_NAME = 8 Local $tagIMAGE_SECTION_HEADER = _ "byte Name[" & $IMAGE_SIZEOF_SHORT_NAME & "];" & _ "dword Misc;" & _ "dword VirtualAddress;" & _ "dword SizeOfRawData;" & _ "dword PointerToRawData;" & _ "dword PointerToRelocations;" & _ "dword PointerToLinenumbers;" & _ "ushort NumberOfRelocations;" & _ "ushort NumberOfLinenumbers;" & _ "dword Characteristics" For $i = 1 To $NumberOfSections Local $ISH = ReadFromWriteTo($hFileA,$MovePos,$hFileB,$MovePos,$tagIMAGE_SECTION_HEADER) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(8,0,0) EndIf $InfoArray[$i - 1][0] = DllStructGetData($ISH,"PointerToRawData") $InfoArray[$i - 1][1] = DllStructGetData($ISH,"SizeOfRawData") $InfoArray[$i - 1][2] = DllStructGetData($ISH,"VirtualAddress") $MovePos += DllStructGetSize($ISH) Next Local $RemainderSize = ($SizeOfHeaders - $MovePos) if ($RemainderSize) Then Local $tagRemainderData = "BYTE[" & $RemainderSize & "]" ReadFromWriteTo($hFileA,$MovePos,$hFileB,$MovePos,$tagRemainderData) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(9,0,0) EndIf EndIf Local $PointerToRawData , $SizeOfRawData , $VirtualAddress , $tagSectionData For $i = 1 To $NumberOfSections $PointerToRawData = $InfoArray[$i - 1][0] $SizeOfRawData = $InfoArray[$i - 1][1] $VirtualAddress = $InfoArray[$i - 1][2] if ($SizeOfRawData) Then $tagSectionData = "BYTE[" & $SizeOfRawData & "]" ReadFromWriteTo($hFileA,$PointerToRawData,$hFileB,$PointerToRawData,$tagSectionData) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(10,0,0) EndIf EndIf Next Local $PEImageSize = _WinAPI_GetFileSizeEx($hFileB) ;Get Size Of Image File WithOut Autoit Script Code Or Get Size Of Image File WithOut Surplus Data Local $Dll_Exe_FileSize = _WinAPI_GetFileSizeEx($hFileA) ;Get Size Of Autoit File With Autoit Script Code or Get Size Of Dll_Exe_File With Surplus Data Local $SurplusDataSize = $Dll_Exe_FileSize - $PEImageSize ;Get Size Of Autoit Script Code Or Get Size Of Surplus Data if ($SurplusDataSize) Then Local $tagSurplusDataData = "BYTE[" & $SurplusDataSize & "]" ReadFromWriteTo($hFileA,$PEImageSize,$hFileC,0,$tagSurplusDataData) if @error Then _WinAPI_CloseHandle($hFileA) _WinAPI_CloseHandle($hFileB) _WinAPI_CloseHandle($hFileC) Return SetError(11,0,0) EndIf EndIf Local $RtImageArray[3][2] $RtImageArray[0][0] = $hFileA ; Dll_Exe_File File $RtImageArray[0][1] = $Dll_Exe_File ; Dll_Exe_File File $RtImageArray[1][0] = $hFileB ; PEImage File $RtImageArray[1][1] = $PEImage ; PEImage File $RtImageArray[2][0] = $hFileC ; SurplusData File $RtImageArray[2][1] = $SurplusData ; SurplusData File Return $RtImageArray EndFunc Func ReadFromWriteTo($FileFrom,$FileFromPos,$FileTo,$FileToPos,$tagDataStruct) Local $nBytes = 0 , $BOOL = 0 _WinAPI_SetFilePointer($FileFrom,$FileFromPos) if @error Then Return SetError(1,0,0) _WinAPI_SetFilePointer($FileTo,$FileToPos) if @error Then Return SetError(2,0,0) Local $DataStruct = DllStructCreate($tagDataStruct) if @error Then Return SetError(3,0,0) Local $DataSize = DllStructGetSize($DataStruct) $BOOL = _WinAPI_ReadFile($FileFrom,DllStructGetPtr($DataStruct),$DataSize,$nBytes) if Not($BOOL) Then Return SetError(4,0,0) $BOOL = _WinAPI_WriteFile($FileTo,DllStructGetPtr($DataStruct),$DataSize,$nBytes) if Not($BOOL) Then Return SetError(5,0,0) Return $DataStruct EndFunc Func FileToDataStruct($FileName,$Flag = 2,$iPos = 0) ;$Flag=1 Return BYTE DataStruct ;$Flag=2 Return Char DataStruct ;iPos Number of bytes to move the file pointer Local $iRead $hFile = _WinAPI_CreateFile($FileName,2,2) if ($hFile = 0) Then Return SetError(1,0,0) _WinAPI_SetFilePointer($hFile,$iPos,0) $FileSize = _WinAPI_GetFileSizeEx($hFile) - $iPos Switch $Flag Case 1 $DataStruct = DllStructCreate("char[" & $FileSize & "]") Case 2 $DataStruct = DllStructCreate("byte[" & $FileSize & "]") Case Else _WinAPI_CloseHandle($hFile) Return SetError(2,0,0) EndSwitch $BOOL = _WinAPI_ReadFile($hFile,DllStructGetPtr($DataStruct),$FileSize,$iRead) if $BOOL = 0 Then _WinAPI_CloseHandle($hFile) Return SetError(3,0,0) EndIf _WinAPI_CloseHandle($hFile) Return $DataStruct EndFunc Func StringToDataStruct($Text) $Len = StringLen($Text) if $Len = 0 Then Return SetError(1,0,0) $DataStruct = DllStructCreate("char[" & $Len & "]") DllStructSetData($DataStruct,1,$Text) Return $DataStruct EndFunc Func ResGet($ResName,$ResType,$ResLanguage = -1,$HModule = 0) Local $DataType1 = "LONG",$DataType2 = "LONG" Local $LPVOID,$HRSRC,$ResSize,$HGLOBAL if IsString($ResName) Then $ResName = StringUpper($ResName) $DataType1 = "WSTR" EndIf If IsString($ResType) Then $ResType = StringUpper($ResType) $DataType2 = "WSTR" EndIf if ($HModule = 0) Then $HModule = _WinAPI_GetModuleHandle(0) if ($ResLanguage <> -1) Then $HRSRC = DllCall("Kernel32.dll","ptr","FindResourceExW","ptr",$HModule,$DataType2, _ $ResType,$DataType1,$ResName,"WORD",$ResLanguage) if @error Or $HRSRC[0] = 0 Then Return SetError(1,0,0) Else $HRSRC = DllCall("Kernel32.dll","ptr","FindResourceW","ptr",$HModule,$DataType1,$ResName,$DataType2, _ $ResType) if @error Or $HRSRC[0] = 0 Then Return SetError(1,0,0) EndIf $HRSRC = $HRSRC[0] $ResSize = DllCall("Kernel32.dll","DWORD","SizeofResource","ptr",$HModule,"ptr",$HRSRC) if (@error Or $ResSize[0] = 0) Then Return SetError(2,0,0) $ResSize = $ResSize[0] $HGLOBAL = DllCall("Kernel32.dll","ptr","LoadResource","ptr",$HModule,"ptr",$HRSRC) if @error Or $HGLOBAL[0] = 0 Then Return SetError(3,0,0) $HGLOBAL = $HGLOBAL[0] $LPVOID = DllCall("Kernel32.dll","ptr","LockResource","ptr",$HGLOBAL) if @error Or $LPVOID[0] = 0 Then $BOOL = DllCall("Kernel32.dll","BOOL","FreeResource","ptr",$HGLOBAL) Return SetError(4,0,0) EndIf $LPVOID = $LPVOID[0] $ByteStruct = DllStructCreate("BYTE[" & $ResSize & "]") _MemMoveMemory($LPVOID,DllStructGetPtr($ByteStruct),$ResSize) $BOOL = DllCall("Kernel32.dll","BOOL","FreeResource","ptr",$HGLOBAL) Return SetError(0,$ResSize,$ByteStruct) EndFunc $Dll_Exe_File The name of the file that we will update its resource $DataStruct Data structure that will be added to the resource If the structure of the data is equal to zero will be deleted specified Resource element $lpType Resource type $lpName Resource Name ,$wLanguage Resource Language $DelExRes If true will Delete all elements of Resource then The new element will be added to the resource If false will only add the new element to the resource Edited November 9, 2014 by wolf9228 Turbo420 1 صرح السماء كان هنا Link to comment Share on other sites More sharing options...
r2dak Posted February 5, 2013 Share Posted February 5, 2013 how to use it there are no instructions in it [center][font=comic sans ms,cursive]PEACE & LOVE[/font][/center] Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted February 5, 2013 Moderators Share Posted February 5, 2013 r2dak,how to use it there are no instructions in itThat is what I keep telling wolf9228 - but I have been told by better coders then myself that if you need to use his code you can understand it without written instructions, and if you cannot understand it then you do not need it. Some of them have also promised to explain all his posts in more detail once they have seen them - so be patient and no doubt some clever person will come along soon and make it all clear to us dunderheads. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
UEZ Posted February 5, 2013 Share Posted February 5, 2013 Better something like this than no examples. Br, UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ Link to comment Share on other sites More sharing options...
JohnOne Posted February 5, 2013 Share Posted February 5, 2013 Even the little info that is provided in this case is better than the previous nothing at all. I know there is no rule to make an explanation, it's just a standard thing people usually do. Also, thanks for sharing wolf. AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
wolf9228 Posted February 5, 2013 Author Share Posted February 5, 2013 (edited) how to use it there are no instructions in it$Dll_Exe_FileThe name of the file that we will update its resource$DataStructData structure that will be added to the resourceIf the structure of the data is equal to zerowill be deleted specified Resource element i$lpTypeResource type$lpNameResource Name,$wLanguageResource Language$DelExResIf true will Delete all elements of Resource thenThe new element will be added to the resourceIf false will only add the new element to the resourceBeginUpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648030%28v=vs.85%29.aspxUpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648049%28v=vs.85%29.aspxEndUpdateResourcehttp://msdn.microsoft.com/en-us/library/windows/desktop/ms648032%28v=vs.85%29.aspx Edited February 5, 2013 by wolf9228 صرح السماء كان هنا Link to comment Share on other sites More sharing options...
guinness Posted February 5, 2013 Share Posted February 5, 2013 Better something like this than no examples.Br,UEZBut it kind of defeats the point of the examples surely, if you're limiting the target audience to experienced users only. It doesn't take much effort just to write a short description with perhaps comments here or there. 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 Link to comment Share on other sites More sharing options...
UEZ Posted February 5, 2013 Share Posted February 5, 2013 (edited) Well, if he would write some comments would be easier for beginners to understand? I bet also experienced users having problem to understand his code (me too) when he would put some comments... You can try to analyze and understand his code, somethimes he provides some useful MSDN links. Br, UEZ Edited February 5, 2013 by UEZ Please don't send me any personal message and ask for support! I will not reply! Selection of finest graphical examples at Codepen.io The own fart smells best! ✌Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!¯\_(ツ)_/¯ ٩(●̮̮̃•̃)۶ ٩(-̮̮̃-̃)۶ૐ Link to comment Share on other sites More sharing options...
wraithdu Posted February 5, 2013 Share Posted February 5, 2013 Well based on the work I did for the resource functionality of AutoIt3Wrapper, this is basic at best. Sure you can use the functions to add an existing resource as binary data, or a raw resource such as RT_RCDATA, but this in no way helps you create icon or string or bitmap resources (for example) like AutoIt3Wrapper does. BTW, where did you get the code to extract the overlay data? Link to comment Share on other sites More sharing options...
KaFu Posted February 5, 2013 Share Posted February 5, 2013 Some of them have also promised to explain all his posts in more detail once they have seen them...Just saw it, but seems everything's fine now ... OS: Win10-22H2 - 64bit - German, AutoIt Version: 3.3.16.1, AutoIt Editor: SciTE, Website: https://funk.eu AMT - Auto-Movie-Thumbnailer (2024-Oct-13) BIC - Batch-Image-Cropper (2023-Apr-01) COP - Color Picker (2009-May-21) DCS - Dynamic Cursor Selector (2024-Oct-13) HMW - Hide my Windows (2024-Oct-19) HRC - HotKey Resolution Changer (2012-May-16) ICU - Icon Configuration Utility (2018-Sep-16) SMF - Search my Files (2024-Oct-20) - THE file info and duplicates search tool SSD - Set Sound Device (2017-Sep-16) Link to comment Share on other sites More sharing options...
wolf9228 Posted February 5, 2013 Author Share Posted February 5, 2013 r2dak,That is what I keep telling wolf9228 - but I have been told by better coders then myself that if you need to use his code you can understand it without written instructions, and if you cannot understand it then you do not need it. Some of them have also promised to explain all his posts in more detail once they have seen them - so be patient and no doubt some clever person will come along soon and make it all clear to us dunderheads. M23PE resource known to most programmers and does not require explanationWho wants to know about the resource and its details browse MSDN siteResource Reference (Windows)http://msdn.microsoft.com/en-us/library/windows/desktop/ff468901%28v=vs.85%29.aspxThanks Melba23 صرح السماء كان هنا Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted February 5, 2013 Moderators Share Posted February 5, 2013 wolf9228, What you have in the first post now is fine - thank you for having added it. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
wolf9228 Posted February 5, 2013 Author Share Posted February 5, 2013 Better something like this than no examples.Br,UEZAll examples will be similarupdate and getThanks UEZ صرح السماء كان هنا Link to comment Share on other sites More sharing options...
wolf9228 Posted February 5, 2013 Author Share Posted February 5, 2013 (edited) Even the little info that is provided in this case is better than the previous nothing at all.I know there is no rule to make an explanation, it's just a standard thing people usually do.Also, thanks for sharing wolf.Thank you for your expressive words looks kind of praise Edited February 5, 2013 by wolf9228 صرح السماء كان هنا Link to comment Share on other sites More sharing options...
wolf9228 Posted February 5, 2013 Author Share Posted February 5, 2013 But it kind of defeats the point of the examples surely, if you're limiting the target audience to experienced users only. It doesn't take much effort just to write a short description with perhaps comments here or there.Very discreet opinion Thank you صرح السماء كان هنا Link to comment Share on other sites More sharing options...
guinness Posted February 5, 2013 Share Posted February 5, 2013 I meant no offence by this. 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 Link to comment Share on other sites More sharing options...
JohnOne Posted February 5, 2013 Share Posted February 5, 2013 Thank you for your expressive words looks kind of praise Thank you, I will definitely learn something from it AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
Turbo420 Posted February 6, 2013 Share Posted February 6, 2013 (edited) maybe if you don't know how to use it you don't need to use it nice job wolf9228 Edited February 6, 2013 by Turbo420 Link to comment Share on other sites More sharing options...
JohnOne Posted February 6, 2013 Share Posted February 6, 2013 maybe if you don't know how to use it you don't need to use it nice job wolf9228 I wonder if you teach that philosophy to your children?I mean who needs toilets eh! AutoIt Absolute Beginners Require a serial Pause Script Video Tutorials by Morthawt ipify Monkey's are, like, natures humans. Link to comment Share on other sites More sharing options...
wolf9228 Posted February 9, 2013 Author Share Posted February 9, 2013 (edited) Well based on the work I did for the resource functionality of AutoIt3Wrapper, this is basic at best. Sure you can use the functions to add an existing resource as binary data, or a raw resource such as RT_RCDATA, but this in no way helps you create icon or string or bitmap resources (for example) like AutoIt3Wrapper does.BTW, where did you get the code to extract the overlay data?I know the meaning of this post well but it requires more work andeffort so it was a simple example of this topicBTW, where did you get the code to extract the overlay data?I did not understand what these words mean you please clarify these words Edited February 9, 2013 by wolf9228 صرح السماء كان هنا 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