Hallo, ich weiß dass das Forum kein PowerShell support anbietet aber nachdem ich von diversen leuten @ErfinderDesRades uvm. so hilfreiche Tipps bekommen hab wollte ich trotzdem mein Glück versuchen..
Es geht darum dass ich in PowerShell eine komplette funktion gebaut hab (diese funktioniert auch so wie sie soll) und möchte das ganze jetzt in einer GUI ausgeben.
Folgenden Code habe ich, der funktioniert auch.
Die GUI zeigt es mir an, ich sehe sowohl Button als auch Label usw.. Alles kein Problem.
Was soll dieses "Tool" tun?
Ich möchte in die TextBox den "samAccountName" eingeben und er soll mir mit einem Klick auf den Button "btnSearchSamAccountName" meine Funktion aufrufen und das Ergebnis in "OutputAnalyze " (ListBox) ausgeben.
Dazu kann ich aber sagen dass die Funktion in der ISE einwandfrei funktioniert und mir ausgibt was ich will... Aber halt nicht in die GUI.
Evtl hat da jemand ne Idee wie das umzusetzen ist?
Gedanke war: Die Funktion komplett rein zu laden (wenn die Form geladen wird) und dann mit dem Klick auf den Button die Funktion auszuführen und den Parameter bzw. die Variable von der TextBox an die Funktion direkt übergibt.
Also sozusagen nach dem Code Abschnitt
irgendwie sowas wie:
Bin für jede Hilfe dankbar
//Nachtrag: wenn ich
durch das hier ersetze wird mir der Output (also als String der da wäre "True") im ISE Terminal angezeigt - aber ich will es ja in der GUI sehen. Also das Ergebnis der Funktion
Es geht darum dass ich in PowerShell eine komplette funktion gebaut hab (diese funktioniert auch so wie sie soll) und möchte das ganze jetzt in einer GUI ausgeben.
Folgenden Code habe ich, der funktioniert auch.
C-Quellcode
- Add-Type -AssemblyName System.Windows.Forms
- [System.Windows.Forms.Application]::EnableVisualStyles()
- $Form = New-Object system.Windows.Forms.Form
- $Form.ClientSize = '378,400'
- $Form.text = "Show Active Directory User"
- $Form.TopMost = $false
- $txtBxEnterSamAccountName = New-Object system.Windows.Forms.TextBox
- $txtBxEnterSamAccountName.multiline = $false
- $txtBxEnterSamAccountName.width = 194
- $txtBxEnterSamAccountName.height = 20
- $txtBxEnterSamAccountName.location = New-Object System.Drawing.Point(14, 46)
- $txtBxEnterSamAccountName.Font = 'Microsoft Sans Serif,10'
- $lblSamAccountName = New-Object system.Windows.Forms.Label
- $lblSamAccountName.text = "Enter samAccountName here"
- $lblSamAccountName.AutoSize = $true
- $lblSamAccountName.width = 25
- $lblSamAccountName.height = 10
- $lblSamAccountName.location = New-Object System.Drawing.Point(14, 18)
- $lblSamAccountName.Font = 'Microsoft Sans Serif,10'
- $OutputAnalyze = New-Object system.Windows.Forms.ListBox
- $OutputAnalyze.text = "listBox"
- $OutputAnalyze.width = 349
- $OutputAnalyze.height = 267
- $OutputAnalyze.location = New-Object System.Drawing.Point(12, 117)
- $btnSearchSamAccountName = New-Object system.Windows.Forms.Button
- $btnSearchSamAccountName.text = "Search"
- $btnSearchSamAccountName.width = 146
- $btnSearchSamAccountName.height = 30
- $btnSearchSamAccountName.location = New-Object System.Drawing.Point(219, 42)
- $btnSearchSamAccountName.Font = 'Microsoft Sans Serif,10'
- $btnSearchSamAccountName.Add_Click( {
- $OutputAnalyze.text = "blablabla" //das wird leider auch nicht in der ListBox angezeigt, warum auch immer :S
- })
- $Form.controls.AddRange(@($txtBxEnterSamAccountName, $lblSamAccountName, $OutputAnalyze, $btnSearchSamAccountName))
- [void]$Form.ShowDialog()
Die GUI zeigt es mir an, ich sehe sowohl Button als auch Label usw.. Alles kein Problem.
Was soll dieses "Tool" tun?
Ich möchte in die TextBox den "samAccountName" eingeben und er soll mir mit einem Klick auf den Button "btnSearchSamAccountName" meine Funktion aufrufen und das Ergebnis in "OutputAnalyze " (ListBox) ausgeben.
Dazu kann ich aber sagen dass die Funktion in der ISE einwandfrei funktioniert und mir ausgibt was ich will... Aber halt nicht in die GUI.
Evtl hat da jemand ne Idee wie das umzusetzen ist?
Gedanke war: Die Funktion komplett rein zu laden (wenn die Form geladen wird) und dann mit dem Klick auf den Button die Funktion auszuführen und den Parameter bzw. die Variable von der TextBox an die Funktion direkt übergibt.
Also sozusagen nach dem Code Abschnitt
irgendwie sowas wie:
Bin für jede Hilfe dankbar
//Nachtrag: wenn ich
durch das hier ersetze wird mir der Output (also als String der da wäre "True") im ISE Terminal angezeigt - aber ich will es ja in der GUI sehen. Also das Ergebnis der Funktion
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „0ptix“ ()