Jump to content

Automation

58 files

  1. UninstallByShortcut

    I didn't see anything like this, so i figured i created it.
    The objective is to uninstall an application by right mouse clicking it's shortcut, and then selecting the uninstall in context menu.
    To make this work you simply run the exe to set the registry/context menu. To remove the context menu entry, run it again.
    That's it, it will only be called when there's a right mouse click in a shortcut file and the entry is pressed.
    Then it will search the registry for the path of the application and start the uninstall exe from respective application.
    From then on, the user has to go through the uninstaller process for that application.
    Any problem let me know.

    347 downloads

       (0 reviews)

    0 comments

    Updated

  2. Params Tool

    Params Tool is a tool to call exe's with a parameter you write in the input box.
    It will execute the written commands just like cmd prompt window.
    If the input field is empty, the default cmd is "/?"
    To start this tool:
    Double click it, it will write to registry.
    From there on it's just a question of shift+right click the exe you want to apply parameters to.
    To remove from registry:
    call the tool with the parameter /RemoveReg

    471 downloads

       (0 reviews)

    5 comments

    Updated

  3. SciTE Hopper

    For more details go to the Topic

    929 downloads

       (0 reviews)

    0 comments

    Updated

  4. HyCam2

    Automation for HyCam2 screen recording utility.

    623 downloads

       (1 review)

    3 comments

    Updated

  5. Chilkat UDF

    ; #INDEX# ======================================================================== ; Title .........: Chilkat.au3 ; AutoIt Version : 3.3.10.2++ ; Language ......: English ; Description ...: A collection of Function for use with Chilkat component ; Author ........: mLipok ; Modified ......: ; URL ...........: https://www.chilkatsoft.com/refdoc/activex.asp ; URL ...........: https://www.chilkatsoft.com/downloads_ActiveX.asp ; Date ..........: 2017/02/01 ; Version .......: 0.1.1 BETA - Work in progress ; ================================================================================ This is an UDF modest beginning for Chilkat component:
    https://www.chilkatsoft.com/downloads_ActiveX.asp
    Some of AcitveX object bundled int this component (dll file) are Free, some other are commercial.

    Support topic:
     

    997 downloads

       (0 reviews)

    0 comments

    Updated

  6. ExcelChart

    Extensive library to control and manipulate Microsoft Excel charts.
    Written by GreenCan and water.
    Theads: General Help & Support - Example Scripts
    BTW: If you like this UDF please click the "I like this" button. This tells me where to next put my development effort

    KNOWN BUGS (last changed: 2017-07-21)
    None. The COM error handling related bugs have been fixed.
     

    1,401 downloads

       (2 reviews)

    0 comments

    Updated

  7. QuickPhrase 1.1f

    About This File
    QuickPhrase 1.1f - Simple text expander.
    Watches for a trigger text to expand out to full text.  The trigger needs to be text that would not be part of another word unless used for auto correction.


    304 downloads

       (0 reviews)

    0 comments

    Updated

  8. SRT Subtitle Synchronizer

    Subtitle Synchronizer for '.srt' files, what you do is figure out what is the offset in time, if using SMPlayer you can vary the delay of the subtitles with 'Z' and 'X' keys.
    When it looks good, remember the value and put it in this application, with the corresponding operator plus or minus sign.
    Drag the .srt file to the application, or shift+right click on top of the file and press the context menu option.
    On the press of "Save" button, the original file will have the suffix '.bak' and the file that was dragged will be modified with the new timings.
    Note this only works if the subtitle has the same time offset throughout the entire duration of the film. This is more of a subtitle offset corrector than a synchronizer, i think, but anyway.
     
    Remove from context menu at any time by calling the application with /remove, or while its running, go to traymenu and press remove.
    Hope it serves you well.
    Many thanks for the people who helped, you know who you are.

    265 downloads

       (0 reviews)

    0 comments

    Updated

  9. ADAudit - Active Directory Report

    On one/multiple big sheet(s) you get users (columns) and groups (rows). The list is sorted descending by number of members so you get the users with most groups and the groups with most members on top of the page. You can filter by (multiple) samaccountname(s), department or you can create your own LDAP query filter. You can filter the resulting list of groups using a Regular Expression.
    Version 2.0 uses maps so at the moment it requires the latest beta version of AutoIt!
    BTW: If you like this tool please click the "I like this" button. This tells me where to next put my development effort

    981 downloads

       (0 reviews)

    0 comments

    Updated

  10. HT Images Converter

    HT Image Converter is a kind of file converter that converts one image file format (like a JPG, BMP, TIF, etc.) into another. 
    If you're unable to use a photo, graphic, or any kind of image file the way you'd like because the format isn't supported, image converter software can help. 
    HT Image Converter also supports batch conversion, folder imports, resizing, drag and drop, command line.
    Input/Output  Formats: BMP, JPG, PNG, GIF, TIF, and many more

    538 downloads

       (0 reviews)

    0 comments

    Updated

  11. ThunderBird to Tray

    So, Thunderbird does not have a minimize to tray option. Here is a handler to do just that.
    More info. at https://www.autoitscript.com/forum/topic/187431-thundrebird-to-tray/

    513 downloads

       (0 reviews)

    0 comments

    Updated

  12. Power Profiles Tool

    Set a profile as active, delete, duplicate, export and import.
    Changes to the profile itself are made in windows.
    The objective is to tweak the settings in windows, and then export the profile,
    then latter the user can import and set as active.
    Enjoy.

    454 downloads

       (0 reviews)

    0 comments

    Updated

  13. Program+Folder (USB Shortcut Maker)

    Program+Folder - This application allows you to create sudo persistent shortcuts on a removable device. If you create a regular shortcut on a removable device and its drive letter changes or you move it to another PC, the shortcut stops working. This little program helps solve that. Simply run the application from the root of your device and follow the tree to the application you want to make a shortcut to. Application must be an EXE. program+folder has to be in a parent folder to the application you are creating the shortcut for. See screenshots for example. Originally I had called this Folder+Program, but thought it better to put the program name first for better sorting.
    There are bound to be bugs and limitations so try it out and let me know how to improve it.




    333 downloads

       (0 reviews)

    0 comments

    Updated

  14. ListCompare

    ListCompare - Simple program, paste in two lists to compare. Button one compares case insensitive (Image 3). Button two compares case (Image 4). The results are given as Left only Both or Right only. Names of the list can be changed. This application was written as a project for work. We were given a list of names to compare against a websites list to see how search results were given. This application helped automate the task of comparing. Hope it can be of used to someone else.


    241 downloads

       (0 reviews)

    0 comments

    Submitted

  15. WinSizer (Windows Layout Manager)

    WinSizer 2.1c - Size and place the active windows on your desktop.
    I had 2 applications to manage window layouts, but one was complicated, and they both required a hot key to activate. So, I cloned the layout of the one I liked that was simple, and made it so that it is automatic. Basically this program lets you pick from a list of open windows and save its position and size, with the option of choosing if you just want to maintain its size, or position or both, and how the program looks for the said window. Feel free to add or change as you like. If you find bugs or have ideas let me know.  Thanks to a function by (johnmcloud) added the ability to call the program from a shortcut as minimized for use in adding to startup.
    Instructions!
    Click on a window and select "add new". While the settings window is active, you can move and size the target window. The values will automatically update in the settings window. Then save to lock it down. If you open a window after launching winsizer, click refresh to refresh the list of open, visible windows.
    Selecting an open window that has already been saved, will overwrite the current saved information.



    683 downloads

       (0 reviews)

    0 comments

    Submitted

  16. ADCU - Active Directory Compare Users

    ADCU displays two Active Directory users and their group membership in two listviews. You can filter and export the data to Excel, Outlook mail and the clipboard.
    Before running the script you need to change file AD-Tools.ini and function _Check_Access in AD-Tools_User.au3.
    BTW: If you like this UDF please click the "I like this" button. This tells me where to next put my development effort
    Needs to be run with the latest AutoIt production version (>= 3.3.12.0).
    Needs to be run with the latest version of the AD UDF (>= 1.4.2.0).

    1,335 downloads

       (0 reviews)

    0 comments

    Updated

  17. ADCG - Active Directory Compare Groups

    ADCG displays two Active Directory groups and their direct members in two listviews. You can filter and export the data to Excel, Outlook mail and the clipboard.
    Before running the script you need to change file AD-Tools.ini and function _Check_Access in AD-Tools_User.au3.
    BTW: If you like this UDF please click the "I like this" button. This tells me where to next put my development effort
    Needs to be run with the latest AutoIt production version (>= 3.3.12.0).
    Needs to be run with the latest version of the AD UDF (>= 1.4.2.0).

    831 downloads

       (0 reviews)

    0 comments

    Updated

  18. Full Package of computer Inventory and File Manageent Software



    System Requirements : It will run on all windows operating system : Windows server 2003, 2008, 2012 and also Windows XP, 7,8,10 and other windows platform.

    This is full package of the software  which includes
     
    Automatic webpage refreshment,  Changing date stamp of files from one to many files or any extension type,   File Management (Transfer files from data centre with network path and direct directory either by Date (from last to first modified date or from first to last modified date) and also by Name Computer Inventory- Display hardware and software information in text file and also can use to centralize all your computer information Automation to zip and unzip files and folders. Paste file to many folders Recycling Empty files and folders Searching files and folders Trim Filenames automatically (from end or beginning or combined) Note: If you are having problem using the application, do not hesitate to contact me or comment on it . I am still working on improving it and also adding some features.
     
    Computer Information Inventory program :
    The Files :
    Get Computer Detailes.exe - This application will create path C:\M-Omega containing two folders for  hardware info and one for software info.  You can use One2many tasks in Logmein to put info in that path for many computers. It can work to centralized about thousands of computers. 
    Centralized_all_Computer_Details Folder :  You will find 3 files in this folder. Right click the central.ini file and select Edit and change the path name in the file as Input1="\\network_path\pathfile\". Make sure all the computers have access to this share network path... Copy also the user_interface_combo in the same place where the \\network_path\pathfile is located.
    After this, select all the computers you will like to get their computer information. For example, if using Logmein, use one2many tasks. Double click the replicate_inifile.bat. This will copy the cenral.ini to all the required PC path into this location -- "C:\M-Omega\Config_centralize_inventory\central.ini". If your PC is not using C drive, then you can change the C drive to D or E or F which is available. Please note this is when you do not have C drive, that is when you can change the C Drive in the batch script to D or E or F
    You can now use other remote software such as LogmeIn  (One2Many tasks) to run this application "Centralize_all_Computer_details.exe" on all your target computers selected. This will look for the network path you inputed into the central.ini file located in each computer and Within 1 minutes, the hardware and software info is generated on two folders on the network path provided. This can work on thousands of computers.
    User Interface Combo... This is GUI of the application which can help you interact with the software and hardware info in these folders.  I have included files in these folders to understand how this combo GUI works. Make sure this file is located in the same place where you define your network path in the central.ini file.
     

    726 downloads

       (0 reviews)

    1 comment

    Updated

  19. AutoIt Protocol

    A small script that allows you to run AutoIt code from any web browser by creating a special 'autoit:' protocol. Before you use the protocol, run 'install.au3'!

    1,114 downloads

       (0 reviews)

    2 comments

    Updated

  20. silent-ninite

    (almoast) Silent Ninite visite ninite.com
    Put the ninite.exe file into the same folder as the silent-ninite.exe.
    Run 'silent-ninite.exe' and 'See' the beauty!!! :-)

    1,433 downloads

       (0 reviews)

    2 comments

    Submitted

  21. Adobe Photoshop UDF

    UDF for automating Adobe Photoshop software.
    Features:
    Creating, opening and saving documents Manipulating layer settings Applying effects to layers More features soon!

    640 downloads

       (0 reviews)

    0 comments

    Updated

  22. Network Adapters Info

    Network Adapter Info use WMI (Windows Management Instrumentation) 
    Features : 
    Show information network card. Easily copy information, for copy just click on the line want to copy. Notifications connection, connection loss. Supports exporting information to file (CSV/INI format). Run: 
    Export to file INI format:   NetStatus.exe "PathFileOut.INI"   
    Export to file CSV format:  NetStatus.exe "PathFileOut.CSV" CSV
     
    Function:
    Global Const $sNotAvailable = "N/A" Global Const $sBlankIP = "0.0.0.0" Global Const $sBlankMAC = "00:00:00:00:00:00" ;~ #include <Array.au3> ;~ _ArrayDisplay(_GetListAdaptersInfo(".")) Func _GetListAdaptersInfo($sComputer = ".") Local $Cols = 13, $strIndex, $objVAR, $objVARx, $zAdapter, $zAdapterName, $zSpeed, $zIndex, $zInterfaceIndex, $zGetIPType, $zAdapterStatus, $zIP, $zMAC, $zSubNetIP, $zGetwayIP, $zDNS1, $zGetwayMAC, $zDNS2 Local $aReturn[1][$Cols] = [[0, $Cols]] If $sComputer = Default Then $sComputer = @ComputerName Local $sListIndexInterfaceName = _ListIndexInterfaceName() Local $objWMI = ObjGet("winmgmts:\\" & $sComputer & "\root\cimv2") Local $objWQLx = $objWMI.ExecQuery("SELECT * FROM Win32_NetworkAdapter WHERE NetConnectionID != NULL", "WQL", 0x30) ;~ Local $objWQLx = $objWMI.ExecQuery('Select * From Win32_NetworkAdapter', "WQL", 0x30) If Not @error And IsObj($objWQLx) Then For $objVARx In $objWQLx $zAdapterName = $objVARx.NetConnectionID If (StringStripWS($zAdapterName, 8) = "") Then ContinueLoop $zSpeed = _ByteSuffixRound($objVARx.Speed) ; Vista+ If Int($zSpeed) <= 0 Then For $z = 0 To UBound($sListIndexInterfaceName) - 1 If $sListIndexInterfaceName[$z][1] = $zAdapterName Then $zSpeed = _ByteSuffixRound(InterfaceIndexSpeed($sListIndexInterfaceName[$z][0])) Next EndIf $zAdapterStatus = $objVARx.NetConnectionStatus Switch $zAdapterStatus Case 0, 3 $zAdapterStatus = "Disable" Case 1, 2 $zAdapterStatus = "Connected" Case $zAdapterStatus = 7 $zAdapterStatus = "unPlugged" Case Else $zAdapterStatus = $sNotAvailable EndSwitch $strIndex = $objVARx.Index Local $objWQL = $objWMI.ExecQuery('SELECT * FROM Win32_NetworkAdapterConfiguration WHERE Index=' & $strIndex, "WQL", 0x30) If Not @error And IsObj($objWQL) Then For $objVAR In $objWQL $zAdapter = $objVAR.Description $aReturn[0][0] += 1 $zIndex = $aReturn[0][0] ReDim $aReturn[$zIndex * 2][$aReturn[0][1]] $zInterfaceIndex = $objVAR.InterfaceIndex If Int($zInterfaceIndex) <= 0 Then For $z = 0 To UBound($sListIndexInterfaceName) - 1 If $sListIndexInterfaceName[$z][1] = $zAdapterName Then $zInterfaceIndex = $sListIndexInterfaceName[$z][0] Next EndIf $aReturn[$zIndex][0] = $zInterfaceIndex $aReturn[$zIndex][1] = $zAdapter $aReturn[$zIndex][2] = $zAdapterName $aReturn[$zIndex][3] = $zAdapterStatus $zGetIPType = $objVAR.DHCPEnabled If $zGetIPType Then $zGetIPType = "DHCP" Else $zGetIPType = "StaticIP" EndIf $aReturn[$zIndex][4] = $zGetIPType $zIP = $objVAR.IPAddress(0) If StringStripWS($zIP, 8) = "" Then $zIP = $sNotAvailable $aReturn[$zIndex][5] = $zIP $zSubNetIP = $objVAR.IPSubnet(0) If StringStripWS($zSubNetIP, 8) = "" Then $zSubNetIP = $sNotAvailable $aReturn[$zIndex][6] = $zSubNetIP $zMAC = $objVAR.MACAddress If StringStripWS($zMAC, 8) = "" Then $zMAC = $sNotAvailable $aReturn[$zIndex][7] = $zMAC $zGetwayIP = $objVAR.DefaultIPGateway(0) If StringStripWS($zGetwayIP, 8) = "" Then $zGetwayIP = $sNotAvailable $aReturn[$zIndex][8] = $zGetwayIP $zGetwayMAC = $sNotAvailable If $zGetwayIP <> $sNotAvailable Then $zGetwayMAC = _GetMACFromIP($zGetwayIP) $aReturn[$zIndex][9] = $zGetwayMAC $aReturn[$zIndex][10] = $sNotAvailable $aReturn[$zIndex][11] = $sNotAvailable If Number($zSpeed) = 0 Then $zSpeed = $sNotAvailable $aReturn[$zIndex][12] = $zSpeed Local $zDNS = $objVAR.DNSServerSearchOrder() If IsArray($zDNS) Then If (UBound($zDNS) - 1) > 0 Then $aReturn[$zIndex][10] = $zDNS[0] $aReturn[$zIndex][11] = $zDNS[1] Else $aReturn[$zIndex][10] = $zDNS[0] EndIf EndIf Next EndIf Next Return $aReturn EndIf Return SetError(1, 0, "") EndFunc ;==>_GetListAdaptersInfo Func _ListIndexInterfaceName() Local Const $tagIP_ADAPTER_ADDRESSES = "ulong Length;dword IfIndex;ptr Next;ptr AdapterName;ptr FirstUnicastAddress;" & "ptr FirstAnycastAddress;ptr FirstMulticastAddress;ptr FirstDnsServerAddress;ptr DnsSuffix;ptr Description;" & "ptr FriendlyName;byte PhysicalAddress[8];dword PhysicalAddressLength;dword Flags;dword Mtu;dword IfType;int OperStatus;" & "dword Ipv6IfIndex;dword ZoneIndices[16];ptr FirstPrefix;" & "uint64 TransmitLinkSpeed;uint64 ReceiveLinkSpeed;ptr FirstWinsServerAddress;ptr FirstGatewayAddress;" & "ulong Ipv4Metric;ulong Ipv6Metric;uint64 Luid;STRUCT;ptr Dhcpv4ServerSockAddr;int Dhcpv4ServerSockAddrLen;ENDSTRUCT;" & "ulong CompartmentId;STRUCT;ulong NetworkGuidData1;word NetworkGuidData2;word NetworkGuidData3;byte NetworkGuidData4[8];ENDSTRUCT;" & "int ConnectionType;int TunnelType;STRUCT;ptr Dhcpv6ServerSockAddr;int Dhcpv6ServerSockAddrLen;ENDSTRUCT;byte Dhcpv6ClientDuid[130];" & "ulong Dhcpv6ClientDuidLength;ulong Dhcpv6Iaid;ptr FirstDnsSuffix;" Local $aRet, $nBufSize, $stBuffer, $stIP_ADAPTER_ADDRESSES, $pIPAAStruct, $nIPAAStSize Local $pTemp, $nTemp, $nEntries, $aIndexEntries $aRet = DllCall("iphlpapi.dll", "ulong", "GetAdaptersAddresses", "ulong", 0, "ulong", 0x86, "ptr", 0, "ptr", 0, "ulong*", 0) If @error Then Return SetError(1, @error, "") If $aRet[0] Then If $aRet[0] <> 111 Or Not $aRet[5] Then Return SetError(2, $aRet[0], "") EndIf $nBufSize = $aRet[5] $stBuffer = DllStructCreate("int64;byte [" & $nBufSize & "];") $aRet = DllCall("iphlpapi.dll", "ulong", "GetAdaptersAddresses", "ulong", 0, "ulong", 0x86, "ptr", 0, "ptr", DllStructGetPtr($stBuffer), "ulong*", $nBufSize) If @error Then Return SetError(1, @error, "") If $aRet[0] Then Return SetError(2, $aRet[0], "") Dim $aIndexEntries[Floor($nBufSize / 72)][2] $nEntries = 0 $pIPAAStruct = DllStructGetPtr($stBuffer) While $pIPAAStruct <> 0 $stIP_ADAPTER_ADDRESSES = DllStructCreate($tagIP_ADAPTER_ADDRESSES, $pIPAAStruct) $nIPAAStSize = DllStructGetData($stIP_ADAPTER_ADDRESSES, "Length") $nTemp = DllStructGetData($stIP_ADAPTER_ADDRESSES, "OperStatus") If ($nTemp = 2 And Not False) Or DllStructGetData($stIP_ADAPTER_ADDRESSES, "IfType") = 24 Then Else $pTemp = DllStructGetData($stIP_ADAPTER_ADDRESSES, "FirstUnicastAddress") If $pTemp <> 0 Then $aIndexEntries[$nEntries][0] = DllStructGetData($stIP_ADAPTER_ADDRESSES, "IfIndex") $aIndexEntries[$nEntries][1] = _GetStringW_FromPtr(DllStructGetData($stIP_ADAPTER_ADDRESSES, "FriendlyName")) $nEntries += 1 EndIf EndIf $pIPAAStruct = DllStructGetData($stIP_ADAPTER_ADDRESSES, "Next") WEnd If $nEntries = 0 Then Return SetError(-1, 0, "") ReDim $aIndexEntries[$nEntries][2] Return SetExtended($nEntries, $aIndexEntries) EndFunc ;==>_ListIndexInterfaceName Func InterfaceIndexSpeed($IfIndex) Local $tBuffer, $pBuffer, $iResult, $iSpeed $tBuffer = DllStructCreate("wchar[256];dword[5];byte[8];dword[16];char[256]") $pBuffer = DllStructGetPtr($tBuffer) DllStructSetData($tBuffer, 2, $IfIndex, 1) $iResult = DllCall("iphlpapi.dll", "long", "GetIfEntry", "ptr", $pBuffer) If @error Then Return SetError(@error, @extended, 0) $iSpeed = DllStructGetData($tBuffer, 2, 4) ;~ $sDescr = DllStructGetData($tBuffer, 5) $tBuffer = 0 Return SetError($iResult[0], $iSpeed / 1000 / 1000, $iSpeed) EndFunc ;==>InterfaceIndexSpeed Func _GetStringW_FromPtr($pStr) If Not IsPtr($pStr) Or $pStr = 0 Then Return SetError(1, 0, "") Local $aRet = DllCall("kernel32.dll", "ptr", "lstrcpynW", "wstr", "", "ptr", $pStr, "int", 32767) If @error Or Not $aRet[0] Then Return SetError(@error, 0, "") Return $aRet[1] EndFunc ;==>_GetStringW_FromPtr Func _GetMACFromIP($rMAC) If ($rMAC = "") Or ($rMAC = $sNotAvailable) Then Return $sNotAvailable Local $sbMAC = DllStructCreate("byte[6]") Local $siMAC = DllStructCreate("int") DllStructSetData($siMAC, 1, 6) Local $rHexMAC = DllCall("Ws2_32.dll", "int", "inet_addr", "str", $rMAC) $rMAC = $rHexMAC[0] $rHexMAC = DllCall("iphlpapi.dll", "int", "SendARP", "int", $rMAC, "int", 0, "ptr", DllStructGetPtr($sbMAC), "ptr", DllStructGetPtr($siMAC)) $rMAC = "" For $i = 0 To 5 If $i Then $rMAC &= ":" $rMAC = $rMAC & Hex(DllStructGetData($sbMAC, 1, $i + 1), 2) Next If ($rMAC = "") Or ($rMAC = $sBlankMAC) Or ($rMAC = $sNotAvailable) Then Return $sNotAvailable Return $rMAC EndFunc ;==>_GetMACFromIP Func _ByteSuffixRound($iBytes, $iRound = 2) $iBytes = Number($iBytes) If $iBytes > 1000000000 Then Return $sNotAvailable Local $A, $aArray[5] = ["Bps", "Kbps", "Mbps", "Gbps", "Tbps"] While $iBytes > 999 $A += 1 If $A > 3 Then ExitLoop $iBytes /= 1000 WEnd Return Round($iBytes, $iRound) & " " & $aArray[$A] EndFunc ;==>_ByteSuffixRound ;==>CreateContentCSV  

    1,336 downloads

       (1 review)

    1 comment

    Updated

  23. Attributes Tool

    Attributes Tool  
    Features : 
    USB Hidden Folder Fix: Show hidden files in USB and delete (.ink) files.  Rename Unicode (Vietnamese to ASCII - Loại bỏ dấu Tiếng Việt ở tên tập tin và thư mục). Set timestamp for the files/folders. Quickly delete files/folders. |R|: cleanup junk file on computer. |H|: Hide HIDDEN files in Windows. |S|: Show HIDDEN files in Windows.  
    Use : 
     Select mode  Drag and drop files/folder into program window Or press buttons and select files/folders. Or  Run:  AttributesTool.exe "AnyFilesPath.ext"  "AnyFilesPath.ext"  "AnyFilesPath.ext"  (Using the previous configuration was selected!)

    Run as Administrator and select Try Force to the best use!
     
    Function:
    #RequireAdmin Func _SetAttributes($sFileDirIN, $sAttribSet, $sRecurseDir = 1, $sForce = 1) If Not FileExists($sFileDirIN) Then Return SetError(1, 0, 0) $sAttribSet = StringStripWS($sAttribSet, 8) If $sAttribSet = "" Then Return SetError(2, 0, 0) If $sRecurseDir = 1 Then If StringInStr(FileGetAttrib($sFileDirIN), 'D') <> 1 Then $sRecurseDir = 0 EndIf Local $SetAttrib = FileSetAttrib($sFileDirIN, $sAttribSet, $sRecurseDir) If (@error Or $SetAttrib = 0) And $sForce = 1 Then _TakeOwnership($sFileDirIN) $SetAttrib = FileSetAttrib($sFileDirIN, $sAttribSet, $sRecurseDir) EndIf Return SetError($SetAttrib = 0, 0, $SetAttrib > 0) EndFunc ;==>_SetAttributes Func _TakeOwnership($xFile) If Not FileExists($xFile) Then Return SetError(1, 0, $xFile) If StringInStr(FileGetAttrib($xFile), 'D') <> 0 Then RunWait(@ComSpec & ' /c takeown /f "' & $xFile & '" /R /D Y', '', @SW_HIDE) RunWait(@ComSpec & ' /c Echo y|cacls "' & $xFile & '" /T /C /G Administrators:F', '', @SW_HIDE) RunWait(@ComSpec & ' /c icacls "' & $xFile & '" /grant Administrators:F /T /C /Q', '', @SW_HIDE) Return SetError(0, 0, 0) Else RunWait(@ComSpec & ' /c takeown /f "' & $xFile & '"', '', @SW_HIDE) RunWait(@ComSpec & ' /c Echo y|cacls "' & $xFile & '" /C /G Administrators:F', '', @SW_HIDE) RunWait(@ComSpec & ' /c icacls "' & $xFile & '" /grant Administrators:F /Q', '', @SW_HIDE) Return SetError(0, 0, 1) EndIf Return $xFile EndFunc ;==>_TakeOwnership Func _IsUSB($sDrive) Local $sIsUSB = 0, $sType = DriveGetType($sDrive, 3) If DriveGetType($sDrive, 1) = "Removable" Or $sType = "USB" Or $sType = "SD" Or $sType = "MMC" Then $sIsUSB = 1 Return $sIsUSB EndFunc ;==>_IsUSB Func _SplitPath($sFilePath, $sType = 0) Local $sDrive, $sDir, $sFileName, $sExtension, $sReturn Local $aArray = StringRegExp($sFilePath, "^\h*((?:\\\\\?\\)*(\\\\[^\?\/\\]+|[A-Za-z]:)?(.*[\/\\]\h*)?((?:[^\.\/\\]|(?(?=\.[^\/\\]*\.)\.))*)?([^\/\\]*))$", 1) If @error Then ReDim $aArray[5] $aArray[0] = $sFilePath EndIf $sDrive = $aArray[1] If StringLeft($aArray[2], 1) == "/" Then $sDir = StringRegExpReplace($aArray[2], "\h*[\/\\]+\h*", "\/") Else $sDir = StringRegExpReplace($aArray[2], "\h*[\/\\]+\h*", "\\") EndIf $aArray[2] = $sDir $sFileName = $aArray[3] $sExtension = $aArray[4] If $sType = 1 Then Return $sDrive If $sType = 2 Then Return $sDir If $sType = 3 Then Return $sFileName If $sType = 4 Then Return $sExtension If $sType = 5 Then Return $sFileName & $sExtension If $sType = 6 Then Return $sDrive & $sDir If $sType = 7 Then Return $sDrive & $sDir & $sFileName Return $aArray EndFunc ;==>_SplitPath  

    321 downloads

       (0 reviews)

    0 comments

    Updated

  24. Remmanaut

    Remmanaut, the autoit RMM tool.

    498 downloads

       (0 reviews)

    0 comments

    Updated

  25. Blender UDF (Experimental)

    This is an experimental UDF for automating Blender 3D software using AutoIt. The package comes with a Python addon for Blender, allowing such automation and a simple example of how to use this UDF.
    Enjoy!

    510 downloads

       (0 reviews)

    1 comment

    Updated


×
×
  • Create New...