Jump to content

Help please, make an Query Error on BitLocker Active Directory LDAP?


Recommended Posts

Hello everyone:

Sorry for my bad English. I have problems when trying to make a query Active Directory on a specific computer for BitLocker key using a script that I downloaded from this forum but I get several errors.
 
Thanks.
 

I put the script in an attachment used
 
 
And I get the following errors:
 
 
 we intercepted a COM Error!
 
err.windescription: Error operation
 
err.number is: 80020009
 
err.scriptline is: 23
 
err.source is Active Directory
 
 
we intercepted a COM Error!
 
err.windescription: Error operation
 
err.windescription: Variable must be of type 'Object',
 
err.number is: 000000A9
 
err.scriptline is: 26
 
err.source is Active Directory
 
 
we intercepted a COM Error!
 
err.windescription: Error operation
 
err.windescription: Variable must be of type 'Object',
 
err.number is: 000000A9
 
err.scriptline is: 29
 
err.source is Active Directory
 
 
 
 
 
 
 
 
 

 

Link to comment
Share on other sites

Which script did you try?

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
Share on other sites

Hello Water

I use this script 

 

#include <ad.au3>
#include <array.au3>
; --------------------------------------------------------------------------------
; Securely access the Active Directory computer object using Kerberos
; --------------------------------------------------------------------------------
; PC567 Name of the computer you want to check the BitLocker key
; FTR domain name
Global $objDSO = ObjGet("LDAP:")
ConsoleWrite("ObjGet: @error = " & @error & ", @extended = " & @extended & @LF)
;Global $strPathToComputer = "[url=null]LDAP:/cn=Smith,ou=Sales,dc=MyDomain,dc=com[/url]" ;path really has 2 / but to get around forum bug i posted using 1
Global $strPathToComputer = "[url=null]LDAP:/cn=PC567,ou=USERS,dc=FTR,dc=es[/url]" ;path really has 2 / but to get around forum bug i posted using 1
; WScript.Echo "Accessing object: " + strPathToComputer
Global Const $ADS_SECURE_AUTHENTICATION = 1
Global Const $ADS_USE_SEALING = 64 ; 0x40
Global Const $ADS_USE_SIGNING = 128 ; 0x80
$oMyError = ObjEvent("AutoIt.Error","MyErrFunc")    ; Initialize a COM error handler
; --------------------------------------------------------------------------------
; Get all BitLocker recovery information from the Active Directory computer object
; --------------------------------------------------------------------------------
; Get all the recovery information child objects of the computer object
Global $objFveInfos = $objDSO.OpenDSObject($strPathToComputer, "", "", BitOr($ADS_SECURE_AUTHENTICATION, $ADS_USE_SEALING, $ADS_USE_SIGNING))
ConsoleWrite("OpenDSObject: @error = " & @error & ", @extended = " & @extended & @LF)
Global $TempArray[100] = ["msFVE-RecoveryInformation"]
$objFveInfos.Filter = $TempArray
ConsoleWrite("Filter: @error = " & @error & ", @extended = " & @extended & @LF)
; Iterate through each recovery information object
For $objFveInfo in $objFveInfos
   $strName = $objFveInfo.Get("name")
   ConsoleWrite("Get(name): @error = " & @error & ", @extended = " & @extended & @LF)
   $strRecoveryPassword = $objFveInfo.Get("msFVE-RecoveryPassword" & @LF)
   ConsoleWrite("ObjGet(msFVE-RecoveryPassword): @error = " & @error & ", @extended = " & @extended & @LF)
   ConsoleWrite("  name: " & $strName)
   ConsoleWrite("  msFVE-RecoveryPassword: " & $strRecoveryPassword & @LF)
Next
; This is my custom defined error handler
Func MyErrFunc()
  Msgbox(0,"AutoItCOM Test","We intercepted a COM Error !"    & @CRLF  & @CRLF & _
             "err.description is: " & @TAB & $oMyError.description  & @CRLF & _
             "err.windescription:"   & @TAB & $oMyError.windescription & @CRLF & _
             "err.number is: "       & @TAB & hex($oMyError.number,8)  & @CRLF & _
             "err.lastdllerror is: "   & @TAB & $oMyError.lastdllerror   & @CRLF & _
             "err.scriptline is: "   & @TAB & $oMyError.scriptline   & @CRLF & _
             "err.source is: "       & @TAB & $oMyError.source       & @CRLF & _
             "err.helpfile is: "       & @TAB & $oMyError.helpfile     & @CRLF & _
             "err.helpcontext is: " & @TAB & $oMyError.helpcontext _
            )
Endfunc
Edited by Melba23
Added code tags
Link to comment
Share on other sites

As far as I can remember the thread where you got the script from has a final solution.

Can you post the link to the thread?

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts
OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download
Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki
PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki
Task Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki

Standard UDFs:
Excel - Example Scripts - Wiki
Word - Wiki

Tutorials:
ADO - Wiki
WebDriver - Wiki

 

Link to comment
Share on other sites

  • Moderators

marcsusy,

If you add a comment explaining that the path is missing a "/" because of the known forum formatting bug - please do not add the double "/" in the comment itself so that the same error still occurs. ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Hello:

I run the script now I have no errors but I get the following output AutoIt3.exe ended.rc: -1073741819, with a single "/" I get error if I do the two works but I get this output

ObjGet: @error = 0, @extended = 0
OpenDSObject: @error = 0, @extended = 0
Filter: @error = 0, @extended = 0
!>11:56:20 AutoIt3.exe ended.rc:-1073741819

Someone can help me please.

thanks

 

The script is used:

 

; --------------------------------------------------------------------------------
; Securely access the Active Directory computer object using Kerberos
; --------------------------------------------------------------------------------

Global $objDSO = ObjGet("LDAP:")
ConsoleWrite("ObjGet: @error = " & @error & ", @extended = " & @extended & @LF)
Global $strPathToComputer = "LDAP://CN=PC2206,OU=REDES,OU=RECURSOS,DC=TDF,DC=UDK,DC=systems,DC=com"

; WScript.Echo "Accessing object: " + strPathToComputer
Global Const $ADS_SECURE_AUTHENTICATION = 1
Global Const $ADS_USE_SEALING = 64 ; 0x40
Global Const $ADS_USE_SIGNING = 128 ; 0x80

$oMyError = ObjEvent("AutoIt.Error","MyErrFunc")    ; Initialize a COM error handler

; --------------------------------------------------------------------------------
; Get all BitLocker recovery information from the Active Directory computer object
; --------------------------------------------------------------------------------
; Get all the recovery information child objects of the computer object
Global $objFveInfos = ObjGet($strPathToComputer)

ConsoleWrite("OpenDSObject: @error = " & @error & ", @extended = " & @extended & @LF)
Global $TempArray[100] = ["msFVE-RecoveryInformation"]
$objFveInfos.Filter = $TempArray
ConsoleWrite("Filter: @error = " & @error & ", @extended = " & @extended & @LF)
; Iterate through each recovery information object
For $objFveInfo in $objFveInfos
   $strName = $objFveInfo.Get("name")
   ConsoleWrite("Get(name): @error = " & @error & ", @extended = " & @extended & @LF)
   $strRecoveryPassword = $objFveInfo.Get("msFVE-RecoveryPassword" & @LF)
   ConsoleWrite("ObjGet(msFVE-RecoveryPassword): @error = " & @error & ", @extended = " & @extended & @LF)
   ConsoleWrite("  name: " & $strName)
   ConsoleWrite("  msFVE-RecoveryPassword: " & $strRecoveryPassword & @LF)
Next

Func MyErrFunc()
  Msgbox(0,"AutoItCOM Test","We intercepted a COM Error !"    & @CRLF  & @CRLF & _
   "err.description is: " & @TAB & $oMyError.description  & @CRLF & _
   "err.windescription:"   & @TAB & $oMyError.windescription & @CRLF & _
   "err.number is: "       & @TAB & hex($oMyError.number,8)  & @CRLF & _
   "err.lastdllerror is: "   & @TAB & $oMyError.lastdllerror   & @CRLF & _
   "err.scriptline is: "   & @TAB & $oMyError.scriptline   & @CRLF & _
   "err.source is: "       & @TAB & $oMyError.source       & @CRLF & _
   "err.helpfile is: "       & @TAB & $oMyError.helpfile     & @CRLF & _
   "err.helpcontext is: " & @TAB & $oMyError.helpcontext _
  )
Endfunc

 

Thanks for the help

Link to comment
Share on other sites

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
 Share

  • Recently Browsing   0 members

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