Jump to content

Recommended Posts

Posted

Hi

I am very new to AutoIt and have tried a few things (including Google ^_^ ) but can't seem to get anything to work. I want to tell if a registry key (folder) is empty. Could someone post some sample script please?

Thanks,

Pedro.

Posted

Lookup RegEnumKey() and RegEnumVal() in the help file. You can use a counter and increase it if any of the functions mentioned result in something other than error, then, if the counter is 0, the registry key is empty of values or sub-keys.

Posted (edited)

You can use RegEnumKey / RegEnumVal with index 1

Func _RegKeyIsEmpty($Key)
       ; Prog@ndy
    Local $result = 0
    RegEnumVal($Key,1)
    If @error = -1 Then $result += 1
    RegEnumKey($Key,1)
    If @error = -1 Then $result += 2
    Return SetError($result=0,0,$result)
EndFunc

ConsoleWrite(_RegKeyIsEmpty("HKEY_CURRENT_USER\Printers") & @CRLF) ; 0: keys and values
ConsoleWrite(_RegKeyIsEmpty("HKEY_CURRENT_USER\Network") & @CRLF) ; 1: only Keys
ConsoleWrite(_RegKeyIsEmpty("HKEY_CURRENT_USER\Columns") & @CRLF) ; 2: only Values
ConsoleWrite(_RegKeyIsEmpty("HKEY_CURRENT_USER\AppEvents") & @CRLF) ; 3: no Keys, no Values
Edited by ProgAndy

*GERMAN* [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...