-
Notifications
You must be signed in to change notification settings - Fork 0
/
gui_test.ps1
96 lines (87 loc) · 4.16 KB
/
gui_test.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Function switch-smtp($rmv,$add,$smtp) {
# run with user that has permissions to set distribution group or implement that it imports exchange modules
write-host "Set-DistributionGroup -identity $($rmv) -emailaddresses @{Remove=$($smtp)}"
write-host "Set-DistributionGroup -identity $($add) -emailaddresses @{Add=$($smtp)}"
#Set-DistributionGroup -identity $rmv -emailaddresses @{Remove=$smtp} -whatif
#Set-DistributionGroup -identity $add -emailaddresses @{Add=$smtp} -whatif
}
function start-form{
$lbl_X = 25
$tb_X = 175
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]::EnableVisualStyles()
$Form = New-Object system.Windows.Forms.Form
$Form.ClientSize = '400,400'
$Form.text = "Form"
$Form.TopMost = $false
## Labels
$lbl_rmv_frm = New-Object system.Windows.Forms.Label
$lbl_rmv_frm.text = "Remove from group"
$lbl_rmv_frm.AutoSize = $true
$lbl_rmv_frm.width = 25
$lbl_rmv_frm.height = 10
$lbl_rmv_frm.location = New-Object System.Drawing.Point($lbl_X,30)
$lbl_rmv_frm.Font = 'Microsoft Sans Serif,10'
$lbl_add_to = New-Object system.Windows.Forms.Label
$lbl_add_to.text = "Add to group"
$lbl_add_to.AutoSize = $true
$lbl_add_to.width = 25
$lbl_add_to.height = 10
$lbl_add_to.location = New-Object System.Drawing.Point($lbl_X,60)
$lbl_add_to.Font = 'Microsoft Sans Serif,10'
$lbl_email = New-Object system.Windows.Forms.Label
$lbl_email.text = "email"
$lbl_email.AutoSize = $true
$lbl_email.width = 25
$lbl_email.height = 10
$lbl_email.location = New-Object System.Drawing.Point($lbl_X,90)
$lbl_email.Font = 'Microsoft Sans Serif,10'
#TextBoxes
$tb_rmv_frm = New-Object system.Windows.Forms.TextBox
$tb_rmv_frm.multiline = $false
$tb_rmv_frm.width = 100
$tb_rmv_frm.height = 20
$tb_rmv_frm.location = New-Object System.Drawing.Point($tb_X,30)
$tb_rmv_frm.Font = 'Microsoft Sans Serif,10'
$tb_add_to = New-Object system.Windows.Forms.TextBox
$tb_add_to.multiline = $false
$tb_add_to.width = 100
$tb_add_to.height = 20
$tb_add_to.location = New-Object System.Drawing.Point($tb_X,60)
$tb_add_to.Font = 'Microsoft Sans Serif,10'
$tb_email = New-Object system.Windows.Forms.TextBox
$tb_email.multiline = $false
$tb_email.width = 100
$tb_email.height = 20
$tb_email.location = New-Object System.Drawing.Point($tb_X,90)
$tb_email.Font = 'Microsoft Sans Serif,10'
#button(s)
$btn_switch = New-Object system.Windows.Forms.Button
$btn_switch.text = "Change email"
$btn_switch.width = 100
$btn_switch.height = 25
$btn_switch.location = New-Object System.Drawing.Point($tb_X,120)
$btn_switch.Font = 'Microsoft Sans Serif,10'
$Form.controls.AddRange(
@(
$lbl_rmv_frm,
$lbl_add_to,
$lbl_email,
$tb_rmv_frm,
$tb_add_to,
$tb_email,
$btn_switch
)
)
# add event
$btn_switch.Add_Click(
{
switch-smtp $tb_rmv_frm.text $tb_add_to.text $tb_email.text
Add-Type -AssemblyName PresentationFramework
[System.Windows.MessageBox]::Show('Mail alias switched')
$form.close()
}
)
$Form.ShowDialog()
}
start-form