In opdracht 2.5 heb je door middel van een script 50 tekstbestanden gemaakt in de folder C: datal. Deze 50 bestanden hebben echter allemaal dezelfde datum van aanmaken (creatiedatum).
In opdracht 4.3 heb je echter bestanden met verschillende creatiedata nodig. Met onderstaand script kun je de creatiedata van deze bestanden wijzigen.
$setl = (Get -Date) .AddDays (- 10)
$set2 = (Get-Date) .AddDays (-20)
$set3 = (Get-Date) .AddDays (- 30)
$set4 = (Get-Date) . AddDays ( -40)
Get-Item C:\data1\File_?.txt | ForEach-Object {$ .CreationTime = $set1}
Get-Item C:\data1\File_1?.txt | ForEach-Object {$ .CreationTime = $set2}
Get-Item C:\data1\File_2?.txt | ForEach-Object {$. CreationTime = $set3}
Get-Item C:\data1\File_3?.txt | ForEach-Object {$ .CreationTime = $set4}
Uitleg script
$set1
wordt de huidige datum vastgelegd (Get -Date
) en daar wordt en aantal dagen vanaf getrokken met behulp van het negatieve getal achter ) .AddDays
. De eerste regel levert dus en datum op die 10 dagen eerder ligt dan de huidige datum.$set2
tot en met $set4
herhaald, maar het aantal dagen dat er vanaf gehaald word wisselt.$set
op toegepast wordt.Get-Item C:\data1\File_?.txt
$set1
.# Laden van .NET klassen
Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing
# Maak en nieuw formulier
$form = New-Object System.Windows.Forms.Form
# Definieer de eigenschappen van het formulier
$form.Text = 'Open Notepad'
$form.Width = 300
$form.Height = 200
$form.StartPosition = 'CenterScreen'
# Definieer de eigenschappen van en knop
$Button = New-Object System.Windows.Forms.Button
$Button.Location = New-Object System.Drawing.Size(90,89)
$Button.Size = New-Object System.Drawing.Size(120,24)
$Button.Text = "Start Notepad"
# Voeg de knop toe aan het formulier
$form.Controls.Add($Button)
# Voeg een event toe waarmee Notepad wordt geopend
$Button.Add_Click(
{ Start-Process Notepad}
)
# Toon het formulier
$form.ShowDialog()
# Laden van .NET klassen
Add-Type -AssemblyName System.Windows.Forms
Add-Type -AssemblyName System.Drawing
# Maak en nieuw formulier
$form = New-Object System.Windows.Forms.Form
# Definieer de eigenschappen van het formulier
$form.Text = 'Mijn Windows Form'
$form.Width = 300
$form.Height = 200
$form.StartPosition = 'CenterScreen'
# Definieer de eigenschappen van een knop
$Button = New-Object System.Windows.Forms.Button
$Button.Location = New-Object System.Drawing.Size (90,89)
$Button.Size = New-Object System.Drawing.Size(120,24)
Button.Text = "Toon bericht"
# Voeg de knop toe aan het formulier
$form.Controls.Add($Button)
# Definieer de eigenschappen van de textBox
$textBox = New-Object System.Windows.Forms.TextBox
StextBox.Location = New-Object System.Drawing.Size(10, 40)
$textBox.Size = New-Object System.Drawing.Size(260, 20)
# Voeg en textBox toe aan het formulier
$form.Controls.Add($textBox)
# Veg een event toe waarmee messagebox wordt getoond
Button.Add_Click(
{ [System.Windows.Forms.MessageBox]::Show(StextBox.Text) }
)
# Toon het formulier
$form.ShowDialog()
# Laden van .NET klassen
Add-Type -AssemblyName System.Windows.Forms [System.Windows.Forms.Application] : :EnableVisualStyles()
# Formulier opmaken
$Form = New-Object system.Windows.Forms.Form
$Form.ClientSize = New-Object System.Drawing.Point (400, 400)
$Form.text = "Stop Process"
$Form.TopMost = $false
# Label
$lblUitleg = New-Object system.Windows.Forms.Label
$lblUitleg.text = "Kies hieronder een proces"
$blUitleg.AutoSize = $true
$blUitleg.width = 25
$lblUitleg.height = 10
$blUitleg.location = New-Object System.Drawing.Point(111, 28)
$blUitleg.Font = New-Object System.Drawing.Font ('Microsoft Sans Serif', 10)
# Combobox
$cmbProcess = New-Object system.Windows.Forms.ComboBox
ScmbProcess.text = "Selecteer en proces"
$cmbProcess.width = 272
$cmbProcess.height = 20
$cmbProcess.location = New-Object System.Drawing.Point (49, 68)
$cmbProcess.Font = New-Object System.Drawing. Font ('Microsoft Sans Serif', 10)
# Knop
$BtnStopProcess = New-Object system.Windows.Forms.Button
$BtnStopProcess.text = "Stop geselecteerde proces"
§BtnStopProcess.width = 267
§BtnStopProcess.height = 30
$BtnStopProcess.location = New-Object System.Drawing.Point (52, 129)
$BtnStopProcess.Font = New-Object System.Drawing.Font ('Microsoft Sans Serif', 10)
# Controls op formulier plaatsen
$Form.controls.AddRange(@($lblUitleg, $cmbProcess, $BtnStopProcess))
# Combobox vullen met processen
$cmbProcess.Add Click( {
$processes = (Get-Process).Name
foreach ($process in $processes) {
$cmbProcess.items.add($process)
}
})
#Geselecteerde process stoppen
$BtnStopProcess.Add Click( {
Stop-Process -Name $cmbProcess.Text
})
# Formulier tonen
[void]$Form.ShowDialog()
# Laden van .NET klassen
Add- Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Application]: : EnableVisualStyles()
#Formulier opmaken
$Colors = New-Object system.Windows.Forms.Form
$Colors.ClientSize = New-Object System.Drawing.Point (400,400)
$Colors.text = "Kleuren"
$Colors.TopMost = $false
#Definieer 4 radiobuttons
$rdbRood = New-Object system.Windows.Forms.RadioButton
$rdbRood.text = "Rood"
$rdbRood.width = 104
$rdbRood.height = 20
$rdbRood.location = New-Object System.Drawing.Point (40,208)
$rdbBlauw = New-Object system.Windows.Forms.RadioButton
$rdbBlauw.text = "Blauw"
$rdbBlauw.width = 104
$rdbBlauw.height = 20
$rdbBlauw.location = New-Object System.Drawing.Point (40,76)
$rdbGeel = New-Object system. Windows.Forms.RadioButton
$rdbGeel. text = "Geel"
$rdbGeel.width = 104
$rdbGeel.height = 20
$rdbGeel. location = New-Object System.Drawing.Point (40,121)
$rdbGroen = New-Object system.Windows.Forms.RadioButton
$rdbGroen. text = "Groen"
$rdbGroen.width = 104
$rdbGroen.height = 20
§rdbGroen.location = New-Object System.Drawing.Point (40,167)
# Groupbox (bevat de radiobuttons)
$grbChooseColor = New-Object system.Windows.Forms.Groupbox
$grbChooseColor.height = 224
$grbChooseColor.width = 200
$grbChooseColor.text = "Kies een kleur"
$grbChooseColor.location = New-Object System.Drawing.Point (23,42)
$btnOK = New-Object system.Windows.Forms.Button
$btnOK.text = "OK"
$btnOK.width = 194
$btnOK.height = 30
$btnOK.location = New-Object System.Drawing.Point (22,288)
# Listbox verandert van kleur als op knop geklikt wordt
$lstColorBox = New-Object system.Windows.Forms.ListView
$lstColorBox.width = 80
$lstColorBox.height = 222
$lstColorBox.location = New-Object System.Drawing.Point (261,42)
# Controls toevoegen aan formulier
$Colors.controls.AddRange (@($rdbRood, $rdbBlauw, $rdbGeel, $rdbGroen, $grbChooseColor, $btnOK, $lstColorBox))
# Kleur listbox aanpassen als op knop geklikt wordt
$btnOK.Add Click({
If ($rdbBlauw. checked) { $lstColorBox.BackColor = [System.Drawing. Color]: Blue}
Elseif ($rdbGeel. checked) { $lstColorBox. BackColor = [System.Drawing.Color]: :YelLow)
Elseif ($rdbGroen. checked) { $lstColorBox.BackColor = [System.Drawing.Color] : :Green}
Elseif ($rdbRood. checked) { $lstColorBox.BackColor = [System.Drawing.Color]: :Red}
})
#Formulier tonen
[void]$Colors.ShowDialog()