Hallo Leutz,
habe eine Frage. ich habe ein Code, welches mit Powershell Daten abruft und die gelistet in einem Editor aufführt.
Jede Zeile hat einen Wert. Ich würde jetzt gerne beide Editoren vergleichen und gleiche Einträge löschen.
Habt Ihr vielleicht einen Tipp?
C
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <File.au3>
#include <FileConstants.au3>
#include <WinAPIFiles.au3>
#include <GuiEdit.au3>
#include <GuiMenu.au3>
#include <adfunctions1.au3>
#include <Constants.au3>
$Form =GUICreate("Compare Gruppen User", 588, 563, 486, 200)
$aEdit1 = GUICtrlCreateEdit("", 32, 144, 241, 553)
GUICtrlSetData(-1, "Edit1")
$aEdit2 = GUICtrlCreateEdit("", 304, 144, 241, 553)
GUICtrlSetData(-1, "Edit2")
$aInput1 = GUICtrlCreateInput("Input1", 240, 72, 121, 21)
$aInput2 = GUICtrlCreateInput("Input2", 376, 72, 121, 21)
$aButton1 = GUICtrlCreateButton("Info", 240, 104, 257, 17)
$aLabel1 = GUICtrlCreateLabel("Vergleich Benutzer 1 und Benutzer 2", 24, 72, 177, 17)
GUISetState(@SW_SHOW)
Func _PowerShell_Command($sCommand)
Local $iPID = Run(StringFormat('"%s" "%s"', 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe', $sCommand), @ScriptDir, @SW_HIDE, 0x2)
Local $sOut
Do
$sOut &= StdoutRead($iPID)
Until @error
StdioClose($iPID)
Return $sOut
EndFunc
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $aButton1
MsgBox($MB_OK,"","test")
$text1 = GUICtrlRead($aInput1)
$text2 = GUICtrlRead($aInput2)
$abfrage1 = (_PowerShell_Command('Get-ADPrincipalGroupMembership -Identity ' & $text1 & ' | select name | sort-object name'))
$abfrage2 = (_PowerShell_Command('Get-ADPrincipalGroupMembership -Identity ' & $text2 & ' | select name | sort-object name'))
_GUICtrlEdit_SetText($aEdit1, $abfrage1)
_GUICtrlEdit_SetText($aEdit2, $abfrage2)
EndSwitch
WEnd
Alles anzeigen