Jump to content

SRE

Members
  • Posts

    3
  • Joined

  • Last visited

Everything posted by SRE

  1. Thank you Malkey for pointing out the issue with blank elements. I'm using JonathanR's code because it short and works. But I'm hoping someone here can show me how to make it delete in reverse. I notice _ArraySearch has an option to set to 0 to search in reverse and I tried stepping ( STEP - 1 ) from high to 0 for the $a loop. Can't get it to work for me. I discovered that I need it to make the highest numbered rows the authoritative. Currently, it's making the first entry authoritative and deleting everything else that follows that is a duplicate. I want it to keep the last entry and delete all duplicates above it. Any takers? I'm at a loss. Thank you.
  2. I created this account just to say thank you to JonathanR - your solution works flawless let and is exactly what I was looking for. Had a hard time find a thread on how to delete duplicate rows in a 2d array. Saved me hours of work writing my own function. Thank you!
  3. Not sure why vladanv was asking for the DLL seeing as the DLL is automatically created if you update the global path by adding the backslash. However, I'm having an issue with this script working. I'm running Windows 10 with DropBox version 24.4.16. I've tried running the script with admin privileges and all I get is an error message stating "AutoIt v3 Script has stopped working" and then the option to close the program. I'm hoping someone really already smart figured out how to make this code work. The error is caused by the first DllCall. I've confirmed ( fc /b ) that the dp_status.dll file created by the script is the same as the one kaza007 so kindly put up for download. For those who would like, here is what I'm running with the added backslash and a confirmation window letting you know if you're running in admin mode. ;------------------------------------------------------------------------------- ; Read Dropbox Status - What is Dropbox doing ? ;------------------------------------------------------------------------------- ; ; Now the dll has two exported functions: ; - ReturnDropboxStatus ; - GetDropboxPath ; ; Usage ; dllCall($dll, "str", "ReturnDropboxStatus", "str", "c:My Dropbox Path" ) ; ; the parameters are: ; $dll is the dll handle of the (generated) dll "dp_status.dll" ; "str" is the type which the dll is using for the result ; "ReturnDropboxStatus" is the export function of the dll ; "str" is the type which the dll is requesting for the path to check ; "c:My Dropbox Path" is the sting of the Dropbox Sync folder ; Status is returned in $result[0] as a string message from the dll call. ; Possible values are: ; // NOT_RUNNING ; // NOT_IN_DROPBOX ; // UP_TO_DATE ; // SYNCHRONIZING ; // SYNC_PROBLEM ; Notice: NOT_IN_DROPBOX means with correct dropboxpath sync is actually paused ; ; ; How it works: the dll is sniffing the dropboxes pipe for data transfer. dll is ; written in c# .net 4 and modified to fit an au3 dll call. ; ;-------------------------------------------------------------------------------- ; Update ; A helper function can get the Dropbox folder (assuming standard installation) ; by reading Dropboxes host.db located in "/USER/ApplicationData/Dropbox/host.db" ; ; Usage ; dllCall($dll, "str", "GetDropboxPath") ; ;-------------------------------------------------------------------------------- ; ; dll based on a python by Steve H on the dropbox wiki: ; http://www.dropboxwiki.com/Python_Script_To_Get_File_Or_Folder_Status_In_Windows ; dll include based on a script by BugFix: ; http://www.autoit.de/index.php?page=Thread&postID=99705#post99705 ; dll modification is done with help of RAPTOR-ONEs post; ; http://www.autoit.de/index.php?page=Thread&postID=109850#post109850 ;------------------------------------------------------------------------------- If IsAdmin() Then MsgBox(0, "IsAdmin","Admin rights detected.") EndIf Global $sPath = @ScriptDir & "\", $bData[2] = [1] ; String of binary data: dp_status.dll (which contains the Dropbox status dll) ;--------------DO NOT EDIT it's binary data------------------------------------ $bData[1] &= "0x4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000800000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000504500004C0103005FF50C500000000000000000E00002210B010800000E000000040000000000005E2C0000002000000040000000004000002000000002000004000000000000000400000000000000008000000002000000000000030040850000100000100000000010000010000000000000100000000840000028000000042C000057000000000000000000000000000000000000000000000000000000006000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000080000000000000000000000082000004800000000000000000000002E74657874000000640C000000200000000E000000020000000000000000000000000000200000602E7364617461000076000000004000000002000000100000000000000000000000000000400000C02E72656C6F630000100000000060000000020000001200000000000000000000000000004000004200000000000000000000000000000000402C0000000000004800000002000500FC210000E00900000200000000000000000000000000000000000000000000000000000000000000F42B00001000000000000000000000000000000000000000133002003700000001000011001F1A280E00000A7201000070280F00000A0A06281000000A0B07179A281100000A0C281200000A086F1300000A0D0913042B0011042A001330070053010000020000110028010000060A28020000060B06120228030000060D171304200283040313051105281400000A130606281400000A130707281400000A13081104281400000A1309722100007008281500000A281600000A130A731700000A130B110B026F1800000A130C20FE3F00008D18000001130D1106110D166F1900000A001107110D11068E696F1900000A001108110D11078E691A586F1900000A001109110D11088E691E586F1900000A00110C110D11098E691F0C586F1900000A0020FE3F00008D18000001130E281200000A110D6F1300000A1310110A110D110D8E69110E110E8E69120F20E803000028040000061311110E1A9113121111131511152D0A00724D00007013142B47001112131611161F30594503000000020000000B000000140000002B1B726500007013132B1B728300007013132B12729900007013132B0972B500007013132B00111313142B0011142A1E02281A00000A2A0042534A4201000100000000000C00000076322E302E35303732370000000005006C000000E0020000237E00004C030000F003000023537472696E6773000000003C070000D0000000235553000C0800001000000023475549440000001C080000C401000023426C6F620000000000000002000001471502140900000000FA013300160000010000001900000002000000070000000A0000001A0000000D00000002000000010000000400000001000000010000000000BC02010000000000060024000A0006005500430006006C0043000600890043000600A80043000600C10043000600DA0043000600F500430006002F01100106004301100106005101430006008E016E010600AE016E010600D301CC010600DA01CC013F00E601000006000C02020206001902020206002B02CC0106005002440206006D02440206007D02CC0106009C02CC010600AA02CC010600AF02CC01000000000100000000000100010001001000E002F30239000100010000000000800091200103580001000000000080009120150358000100000000008000912028035C00010000000000800091205403630003005020000000009600BB0371000A009420000000009600CA0375000A00F3210000000086183D0010000B00000001003D03020002004903000001006203000002007203000003007D03020004008B0300000500970302000600A60300000700B20300000100DE0309003D00010011003D00010019003D00010021003D00010029003D00010031003D00010039003D00010041003D00010049003D00060051003D00010059003D00010061003D000B0069003D0010007900F4011400890011021A0091001E022000990033022600A10059022C00A10063023100B1008A023700990093023D00B900A3021A00A9003D001000A1008A024200C900B502480071003D0010002E000B007A002E001300C2002E001B00DD002E00230013012E002B0013012E00330013012E003B0019012E00430013012E004B0031012E00530037012E005B0061012E0063006E012E006B0077019601A001CA020001030001030100000105001503010000010700280301000001090054030100048000000100000000000000000000000000E30300000400000000000000000000004F00D7020000000000000000003C4D6F64756C653E0053797374656D2E52756E74696D652E56657273696F6E696E67005461726765744672616D65776F726B417474726962757465002E63746F720053797374656D2E5265666C656374696F6E00417373656D626C795469746C6541747472696275746500417373656D626C794465736372697074696F6E4174747269627574" $bData[1] &= "6500417373656D626C79436F6E66696775726174696F6E41747472696275746500417373656D626C79436F6D70616E7941747472696275746500417373656D626C7950726F6475637441747472696275746500417373656D626C79436F7079726967687441747472696275746500417373656D626C7954726164656D61726B4174747269627574650053797374656D2E52756E74696D652E496E7465726F70536572766963657300436F6D56697369626C65417474726962757465004775696441747472696275746500417373656D626C7946696C6556657273696F6E4174747269627574650053797374656D2E52756E74696D652E436F6D70696C6572536572766963657300436F6D70696C6174696F6E52656C61786174696F6E734174747269627574650052756E74696D65436F6D7061746962696C6974794174747269627574650053797374656D004F626A65637400456E7669726F6E6D656E74005370656369616C466F6C64657200476574466F6C646572506174680053797374656D2E494F005061746800436F6D62696E650046696C650052656164416C6C4C696E657300436F6E766572740046726F6D426173653634537472696E670053797374656D2E5465787400456E636F64696E67006765745F415343494900476574537472696E6700556E69636F6465456E636F64696E6700426974436F6E76657274657200476574427974657300546F537472696E6700537472696E6700436F6E636174004279746500417272617900436F7079546F0064705F7374617475732E646C6C006B65726E656C33322E646C6C006D73636F726C69620044726F70626F78537461747573436865636B0044726F70626F787374617475730047657443757272656E7450726F6365737349640047657443757272656E7454687265616449640050726F636573734964546F53657373696F6E496400647750726F636573734964007053657373696F6E49640043616C6C4E616D656450697065006C704E616D6564506970654E616D65006C70496E427566666572006E496E42756666657253697A65006C704F7574427566666572006E4F757442756666657253697A65006C70427974657352656164006E54696D654F75740047657444726F70626F78506174680052657475726E44726F70626F7853746174757300706174680064705F73746174757300000000001F440072006F00700062006F0078005C0068006F00730074002E0064006200002B5C005C002E005C0050004900500045005C00440072006F00700062006F00780050006900700065005F0000174E004F0054005F00520055004E004E0049004E004700001D4E004F0054005F0049004E005F00440052004F00500042004F0058000015550050005F0054004F005F004400410054004500001B530059004E004300480052004F004E0049005A0049004E0047000019530059004E0043005F00500052004F0042004C0045004D0000008DB87C90C1C8344DBFCD7EBA2BB3D58000042001010E04200101020420010108032000010500010E11410500020E0E0E0500011D0E0E0500011D050E04000012510520010E1D050500011D05090400010E090520011D050E0620020112650808B77A5C561934E08903000009060002020910090D0007020E1D05091D05091009090300000E0400010E0E4701001A2E4E45544672616D65776F726B2C56657273696F6E3D76342E300100540E144672616D65776F726B446973706C61794E616D65102E4E4554204672616D65776F726B20341A01001544726F70626F785374617475734175736C6573656E0000350100304578706F72743A20537472696E672052657475726E44726F70626F7853746174757328537472696E673A506174682029000005010000000017010012436F7079726967687420C2A920203230313200000501000100002901002432323738303938342D643833392D346436662D386636342D34333433663061366534616500000C010007312E302E302E3000000801000800000000001E01000100540216577261704E6F6E457863657074696F6E5468726F7773010907050E1D0E1D050E0E2107170909090209091D051D051D051D050E12551D051D051D05090E02080E0E020800000000FF250040400000000000000000000000FF2504404000004000000100050004400000010005002C2C000000000000000000004E2C0000002000000000000000000000000000000000000000000000402C00000000000000000000000000000000000000005F436F72446C6C4D61696E006D73636F7265652E646C6C0000000000FF2500204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" $bData[1] &= "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000606000006000000005FF50C500000000067400000010000000200000002000000304000003840000040400000DE2B0000EE2B000044400000534000000000010047657444726F70626F78506174680052657475726E44726F70626F78537461747573005C64705F7374617475732E646C6C00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000010000000E03BF03B603C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" ;--------------DO NOT EDIT it's binary data------------------------------------ ; recreate the dll from binary data ... Global $bDatanames[1] = ["dp_status.dll"] ; ... if nessecary if not FileExists($bDatanames[0]) then For $i = 1 To $bData[0] Local $sFile = $sPath & $bDatanames[$i -1] Local $hFileOut = FileOpen($sFile, 2+8+16) FileWrite($hFileOut, Binary($bData[$i])) FileClose($hFileOut) Next ; [optional registers[ function "_DelBinaryTempFiles()" to remove binary after exiting OnAutoItExitRegister("_DelBinaryTempFiles") endif Func _DelBinaryTempFiles() For $i = 1 To $bData[0] FileDelete($sPath & $bDatanames[$i -1]) Next EndFunc ; open the now physically existing dll $dll = DllOpen("dp_status.dll") ; first call the function get DropboxPath $resultPath = DllCall($dll, "str", "GetDropboxPath") ; call the function ReturnDropboxStatus with the returned Path $result = DllCall($dll, "str", "ReturnDropboxStatus", "str", $resultPath[0] ) ; say what dropbox is doing MsgBox(0, "Dropbox Status", $result[0]) DllClose($dll)
×
×
  • Create New...