Add-Type -AssemblyName System.Windows.Forms Add-Type -AssemblyName System.Drawing $baseUrl = "https://office.erium.net" $scriptPath = "$env:TEMP\o365" if (-not (Test-Path $scriptPath)) { New-Item -ItemType Directory -Path $scriptPath | Out-Null } $langPath = Join-Path $scriptPath "Lang" if (-not (Test-Path $langPath)) { New-Item -ItemType Directory -Path $langPath | Out-Null } $files = @{ "lang/English.ini" = Join-Path $langPath "English.ini" "lang/Spanish.ini" = Join-Path $langPath "Spanish.ini" "lang/Turkish.ini" = Join-Path $langPath "Turkish.ini" "ico.ico" = Join-Path $scriptPath "ico.ico" "setup.exe" = Join-Path $scriptPath "setup.exe" "check.bat" = Join-Path $scriptPath "" } foreach ($f in $files.Keys) { $url = "$baseUrl/$f" $dest = $files[$f] try { Invoke-WebRequest -Uri $url -OutFile $dest -UseBasicParsing Write-Host "Descargado: $f -> $dest" } catch { Write-Host "Error al descargar: $f" } } function Read-IniFile { param([string]$FilePath) $ini = @{} $section = "General" if (Test-Path $FilePath) { $content = Get-Content $FilePath -Encoding UTF8 foreach ($line in $content) { $line = $line.Trim() if ($line -eq "" -or $line.StartsWith(";") -or $line.StartsWith("#")) { continue } if ($line.StartsWith("[") -and $line.EndsWith("]")) { $section = $line.Substring(1, $line.Length - 2) if (-not $ini.ContainsKey($section)) { $ini[$section] = @{} } } elseif ($line.Contains("=")) { $split = $line.Split("=", 2) $key = $split[0].Trim() $val = $split[1].Trim() -replace '^"|"$','' if (-not $ini.ContainsKey($section)) { $ini[$section] = @{} } $ini[$section][$key] = $val } } } return $ini } function Load-LanguageFile { param([string]$LangCode) $langFile = Join-Path $scriptPath "Lang\$LangCode.ini" if (Test-Path $langFile) { $iniData = Read-IniFile -FilePath $langFile if (-not $script:translations) { $script:translations = @{} } if (-not $script:translations.ContainsKey($LangCode)) { $script:translations[$LangCode] = @{} } foreach ($section in $iniData.Keys) { foreach ($key in $iniData[$section].Keys) { $val = $iniData[$section][$key] if ($val -is [string]) { $val = $val.Replace('`n', [Environment]::NewLine) } $script:translations[$LangCode][$key] = $val } } } } function Get-LanguageFromCulture { param([string]$culture) $langDir = Join-Path $PSScriptRoot "Lang" if (Test-Path $langDir) { $iniFiles = Get-ChildItem -Path $langDir -Filter "*.ini" foreach ($file in $iniFiles) { $content = Get-Content $file.FullName -ErrorAction SilentlyContinue foreach ($line in $content) { if ($line -match "CultureCode\s*=\s*(.*)") { $code = $matches[1].Trim() if ($culture -eq $code -or $culture.StartsWith($code) -or $code.StartsWith($culture)) { return $file.BaseName } } } } } return $null } $uiCulture = (Get-UICulture).Name $detectedLang = Get-LanguageFromCulture -culture $uiCulture if ($detectedLang) { $script:currentLanguage = $detectedLang } else { $script:currentLanguage = 'Spanish' } if ($script:currentLanguage) { Load-LanguageFile -LangCode $script:currentLanguage } $script:offlineLanguagesLoaded = $false $initialFormTitle = "Office 365 Enterprise Setup v3 | Ardahan University IT Department" if ($script:currentLanguage -and $script:translations.ContainsKey($script:currentLanguage)) { # Seçilen dil sözlüğünden başlığı al / Get title from selected language dictionary $title = $script:translations[$script:currentLanguage]['FormTitle'] if ($title) { $initialFormTitle = $title } } $isAdmin = ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) if (-not $isAdmin) { $adminErrorMsg = $script:translations[$script:currentLanguage]['AdminRightsRequired'] if (-not $adminErrorMsg) { $adminErrorMsg = "This application requires administrator privileges. Please run PowerShell as administrator." } $errorTitle = $script:translations[$script:currentLanguage]['Error'] if (-not $errorTitle) { $errorTitle = $script:translations['Spanish']['Error'] } [System.Windows.Forms.MessageBox]::Show($adminErrorMsg, $errorTitle, [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error) exit } $base64String = "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" $bytes = [Convert]::FromBase64String($base64String) $tempPath = [System.IO.Path]::GetTempPath() $logoPath = [System.IO.Path]::Combine($tempPath, "logo.png") try { [System.IO.File]::WriteAllBytes($logoPath, $bytes) } catch { } if (Test-Path $logoPath) { $logoSize = (Get-Item $logoPath).length if ($logoSize -gt 0) { try { $logo = [System.Drawing.Image]::FromFile($logoPath) } catch { $logo = $null } } else { $logo = $null } } else { $logo = $null } function Test-WritableDirectory { param([string]$path) try { $testFile = Join-Path $path ".writable_test_$(Get-Random).tmp" $null = New-Item -Path $testFile -ItemType File -Force -ErrorAction Stop Remove-Item -Path $testFile -Force -ErrorAction Stop return $true } catch { return $false } } $script:isReadOnlyEnvironment = -not (Test-WritableDirectory -path $PSScriptRoot) $script:readOnlyWarningShown = $false $form = New-Object System.Windows.Forms.Form $form.Text = $initialFormTitle $iconPath = Join-Path $PSScriptRoot "ico.ico" if (Test-Path $iconPath) { $form.Icon = New-Object System.Drawing.Icon($iconPath) } $form.Size = New-Object System.Drawing.Size(820, 700) $form.StartPosition = "CenterScreen" $form.FormBorderStyle = [System.Windows.Forms.FormBorderStyle]::Fixed3D $form.MaximizeBox = $false $form.MinimizeBox = $true $form.ShowInTaskbar = $true $form.Add_Resize({ if ($form.WindowState -eq [System.Windows.Forms.FormWindowState]::Minimized) { $form.WindowState = [System.Windows.Forms.FormWindowState]::Normal $form.BringToFront() $form.Activate() } }) $form.Add_Paint({ param($sender, $e) if ($logo) { $targetWidth = $form.ClientSize.Width / 2 $targetHeight = $form.ClientSize.Height / 2 $scaleWidth = $targetWidth / $logo.Width $scaleHeight = $targetHeight / $logo.Height $scale = [Math]::Min($scaleWidth, $scaleHeight) $width = [Math]::Round($logo.Width * $scale) $height = [Math]::Round($logo.Height * $scale) $x = 20 $y = 20 $graphics = $e.Graphics $graphics.DrawImage($logo, $x, $y, $width, $height) } }) function Get-AvailableLanguages { $langDir = Join-Path $scriptPath "Lang" if (Test-Path $langDir) { return @(Get-ChildItem -Path $langDir -Filter "*.ini" | Select-Object -ExpandProperty BaseName) } return @() } function Switch-Language { param([string]$lang) if ($lang) { $script:currentLanguage = $lang } if (-not $script:currentLanguage -or -not $script:translations.ContainsKey($script:currentLanguage)) { $script:currentLanguage = 'Türkçe' } if ($script:translations.ContainsKey($script:currentLanguage)) { $t = $script:translations[$script:currentLanguage] function Get-Text($key) { if ($t.ContainsKey($key) -and $t[$key]) { return $t[$key] } return "MISSING: $key" } $form.Text = Get-Text 'FormTitle' $licenseGroup.Text = Get-Text 'LicenseType' $archGroup.Text = Get-Text 'Architecture' $languageGroup.Text = Get-Text 'Language' $appsGroup.Text = Get-Text 'ApplicationsGroup' $installOptionsGroup.Text = Get-Text 'InstallOptions' $onlineRadioButton.Text = Get-Text 'Online' $offlineRadioButton.Text = Get-Text 'Offline' $archLabel.Text = Get-Text 'ArchitectureAutoMessage' $installButton.Text = Get-Text 'Install' $exitButton.Text = Get-Text 'Exit' $offlineInstallButton.Text = Get-Text 'OfflineInstall' if ($checkButton) { $checkButton.Text = Get-Text 'Check' } $LinkLabel1.Text = Get-Text 'Link' $LinkLabel2.Text = Get-Text 'About' $infoMsg = Get-Text 'InfoMessage' if ($richTextBox) { $richTextBox.Text = $infoMsg } if ($btnLanguage) { $count = if ($script:selectedLanguagesList) { $script:selectedLanguagesList.Count } else { 1 } # New key added: LanguageButton= $btnTextFormat = Get-Text 'LanguageButton' if ($btnTextFormat -and $btnTextFormat -ne "MISSING: LanguageButton") { $btnLanguage.Text = $btnTextFormat -f $count } } $readyEn = if ($script:translations.ContainsKey('Spanish') -and $script:translations['Spanish']['Ready']) { $script:translations['Spanish']['Ready'] } else { $null } $readyTr = if ($script:translations.ContainsKey('Türkçe') -and $script:translations['Türkçe']['Ready']) { $script:translations['Türkçe']['Ready'] } else { $null } $txtDownloading = if ($t['Downloading']) { $t['Downloading'] } else { $null } $txtInstalling = if ($t['Installing']) { $t['Installing'] } else { $null } $matchDownloading = if ($txtDownloading.Contains(',')) { $txtDownloading.Split(',')[0] } else { $txtDownloading } $matchInstalling = if ($txtInstalling.Contains('.')) { $txtInstalling.Split('.')[0] } else { $txtInstalling } if ($statusLabel.Text -eq $readyEn -or $statusLabel.Text -eq $readyTr) { $statusLabel.Text = Get-Text 'Ready' } else { if ($statusLabel.Text -match $matchDownloading) { $statusLabel.Text = $txtDownloading } elseif ($statusLabel.Text -match $matchInstalling) { $statusLabel.Text = $txtInstalling } } #if ($script:isReadOnlyEnvironment -and $statusLabel1) { #$statusLabel1.Text = Get-Text 'ReadOnlyEnvironmentMessage' #} } } $script:translations = @{} $availableLangs = Get-AvailableLanguages foreach ($lang in $availableLangs) { Load-LanguageFile $lang } if ($script:translations.Count -eq 0) { $script:translations['Türkçe'] = @{} $script:translations['Spanish'] = @{} } $uiCulture = (Get-UICulture).Name if ($uiCulture -like 'tr*') { $script:currentLanguage = 'Türkçe' } else { $script:currentLanguage = 'Spanish' } if (-not $script:translations.ContainsKey($script:currentLanguage)) { if ($script:translations.Count -gt 0) { $keyEnum = $script:translations.Keys.GetEnumerator() if ($keyEnum.MoveNext()) { $script:currentLanguage = $keyEnum.Current } } else { $script:currentLanguage = 'Türkçe' # Hiçbir şey yoksa } } $cmbUiLanguage = New-Object System.Windows.Forms.ComboBox $cmbUiLanguage.Location = New-Object System.Drawing.Point(660, 5) $cmbUiLanguage.Size = New-Object System.Drawing.Size(140, 25) $cmbUiLanguage.DropDownStyle = "DropDownList" $cmbUiLanguage.FlatStyle = "Flat" $cmbUiLanguage.BackColor = [System.Drawing.Color]::WhiteSmoke $cmbUiLanguage.Font = New-Object System.Drawing.Font("Segoe UI", 9) $availLangs = Get-AvailableLanguages foreach ($lang in $availLangs) { [void]$cmbUiLanguage.Items.Add($lang) } if ($cmbUiLanguage.Items.Contains($script:currentLanguage)) { $cmbUiLanguage.SelectedItem = $script:currentLanguage } elseif ($cmbUiLanguage.Items.Count -gt 0) { $cmbUiLanguage.SelectedIndex = 0 } $cmbUiLanguage.Add_SelectedIndexChanged({ $selectedLang = $cmbUiLanguage.SelectedItem if ($selectedLang -ne $script:currentLanguage) { Switch-Language -lang $selectedLang } }) $form.Controls.Add($cmbUiLanguage) $richTextBox = New-Object System.Windows.Forms.Label $richTextBox.Location = New-Object System.Drawing.Point(400, 100) $richTextBox.Size = New-Object System.Drawing.Size(380, 180) $richTextBox.AutoSize = $false $richTextBox.Text = $translations[$script:currentLanguage]['InfoMessage'] $richTextBox.ForeColor = [System.Drawing.Color]::DarkBlue $richTextBox.Font = New-Object System.Drawing.Font("Times New Roman", 12) $richTextBox.BackColor = [System.Drawing.Color]::Transparent $versions = @( @{Text="Office 365"; Value="office365"} ) $versionRadios = @{} $y = 20 foreach ($version in $versions) { $radio = New-Object System.Windows.Forms.RadioButton $radio.Location = New-Object System.Drawing.Point(10, $y) $radio.Size = New-Object System.Drawing.Size(200, 20) $radio.Text = $version.Text $radio.Tag = $version.Value $versionRadios[$version.Value] = $radio $y += 25 } $versionRadios["office365"].Checked = $true $licenseGroup = New-Object System.Windows.Forms.GroupBox $licenseGroup.Location = New-Object System.Drawing.Point(540, 340) $licenseGroup.Size = New-Object System.Drawing.Size(240, 50) $licenseGroup.Text = $translations[$script:currentLanguage]['LicenseType'] $rbRetail = New-Object System.Windows.Forms.RadioButton $rbRetail.Location = New-Object System.Drawing.Point(10, 20) $rbRetail.Size = New-Object System.Drawing.Size(100, 20) $rbRetail.Text = "Retail" $rbVolume = New-Object System.Windows.Forms.RadioButton $rbVolume.Location = New-Object System.Drawing.Point(120, 20) $rbVolume.Size = New-Object System.Drawing.Size(100, 20) $rbVolume.Text = "Volume" $rbVolume.Checked = $true $licenseGroup.Controls.AddRange(@($rbRetail, $rbVolume)) $cmbChannel = New-Object System.Windows.Forms.ComboBox $cmbChannel.Location = New-Object System.Drawing.Point(10, 20) $cmbChannel.Size = New-Object System.Drawing.Size(200, 20) $cmbChannel.DropDownStyle = "DropDownList" $languageGroup = New-Object System.Windows.Forms.GroupBox $languageGroup.Location = New-Object System.Drawing.Point(540, 285) $languageGroup.Size = New-Object System.Drawing.Size(240, 50) $languageGroup.Text = $translations[$script:currentLanguage]['Language'] $btnLanguage = New-Object System.Windows.Forms.Button $btnLanguage.Location = New-Object System.Drawing.Point(10, 20) $btnLanguage.Size = New-Object System.Drawing.Size(220, 23) $fmt = $script:translations[$script:currentLanguage]['LanguageButton'] if ($fmt) { $btnLanguage.Text = $fmt -f 1 } $btnLanguage.BackColor = [System.Drawing.Color]::WhiteSmoke $btnLanguage.FlatStyle = [System.Windows.Forms.FlatStyle]::Flat $languageGroup.Controls.Add($btnLanguage) $script:selectedLanguagesList = @("tr-TR") $languages = @{ "Türkçe" = "tr-TR" "English (United States)" = "en-US" "Deutsch" = "de-DE" "Français" = "fr-FR" "العربية (السعودية)" = "ar-SA" "Български" = "bg-BG" "Čeština" = "cs-CZ" "Dansk" = "da-DK" "Deutsch (Deutschland)" = "de-DE" "Ελληνικά" = "el-GR" "Español (España)" = "es-ES" "Español (México)" = "es-MX" "Eesti" = "et-EE" "Suomi" = "fi-FI" "עברית" = "he-IL" "हिंदी" = "hi-IN" "Hrvatski" = "hr-HR" "Magyar" = "hu-HU" "Bahasa Indonesia" = "id-ID" "Italiano" = "it-IT" "日本語" = "ja-JP" "Қазақ" = "kk-KZ" "한국어" = "ko-KR" "Lietuvių" = "lt-LT" "Latviešu" = "lv-LV" "Bahasa Melayu" = "ms-MY" "Norsk Bokmål" = "nb-NO" "Nederlands" = "nl-NL" "Polski" = "pl-PL" "Português (Brasil)" = "pt-BR" "Português (Portugal)" = "pt-PT" "Română" = "ro-RO" "Русский" = "ru-RU" "Slovenčina" = "sk-SK" "Slovenščina" = "sl-SI" "Српски" = "sr-RS" "Српски (latiniца)" = "sr-latn-CS" "Svenska" = "sv-SE" "ไทย" = "th-TH" "Українська" = "uk-UA" "Tiếng Việt" = "vi-VN" "简体中文" = "zh-CN" "繁體中文" = "zh-TW" } function Show-LanguageSelectionDialog { param ( [System.Windows.Forms.Form]$parentForm, [System.Collections.Hashtable]$languages, [bool]$isOffline = $false ) $dialog = New-Object System.Windows.Forms.Form $dialog.Text = "Dil Seçimi / Language Selection" $dialog.Size = New-Object System.Drawing.Size(350, 400) $dialog.StartPosition = "CenterParent" $dialog.FormBorderStyle = "FixedDialog" $dialog.MaximizeBox = $false $dialog.MinimizeBox = $false $lblInfo = New-Object System.Windows.Forms.Label $lblInfo.Location = New-Object System.Drawing.Point(10, 10) $lblInfo.Size = New-Object System.Drawing.Size(330, 40) function Get-DialogText($key, $default) { if ($script:translations.ContainsKey($script:currentLanguage) -and $script:translations[$script:currentLanguage][$key]) { return $script:translations[$script:currentLanguage][$key] } return $default } $lblInfo.Text = Get-DialogText 'SelectLanguagesInfo' "Lütfen yüklemek istediğiniz dilleri seçin (En fazla 9 dil) / Please select languages to install (Max 9 languages):" $dialog.Controls.Add($lblInfo) $clbDialogLanguages = New-Object System.Windows.Forms.CheckedListBox $clbDialogLanguages.Location = New-Object System.Drawing.Point(10, 50) $clbDialogLanguages.Size = New-Object System.Drawing.Size(330, 250) $clbDialogLanguages.CheckOnClick = $true $offlineAvailableLangs = @() if ($isOffline) { $offlineAvailableLangs = Get-AvailableOfflineLanguages } foreach ($langName in $languages.Keys | Sort-Object) { # Sort for consistent order $langCode = $languages[$langName] $isChecked = $false if ($isOffline -and ($offlineAvailableLangs.Count -gt 0)) { if ($offlineAvailableLangs -contains $langCode) { $isChecked = $true } } else { $isChecked = $script:selectedLanguagesList -contains $langCode } [void]$clbDialogLanguages.Items.Add($langName, $isChecked) } $dialog.Controls.Add($clbDialogLanguages) $clbDialogLanguages.Add_ItemCheck({ param($sender, $e) if ($e.NewValue -eq 'Checked' -and $sender.CheckedItems.Count -ge 9) { $e.NewValue = 'Unchecked' $msg = Get-DialogText 'MaxLanguagesWarning' "En fazla 9 dil seçebilirsiniz. / You can select a maximum of 9 languages." [System.Windows.Forms.MessageBox]::Show($msg, "Uyarı / Warning", "OK", "Warning") } }) $btnOK = New-Object System.Windows.Forms.Button $btnOK.Location = New-Object System.Drawing.Point(115, 310) $btnOK.Size = New-Object System.Drawing.Size(100, 30) $btnText = $script:translations[$script:currentLanguage]['ButtonOK'] if (-not $btnText) { $btnText = "OK" } $btnOK.Text = $btnText $btnOK.DialogResult = [System.Windows.Forms.DialogResult]::OK $dialog.Controls.Add($btnOK) if ($dialog.ShowDialog($parentForm) -eq [System.Windows.Forms.DialogResult]::OK) { $script:selectedLanguagesList = @() foreach ($item in $clbDialogLanguages.CheckedItems) { $script:selectedLanguagesList += $languages[$item] } $count = $script:selectedLanguagesList.Count $fmt = $script:translations[$script:currentLanguage]['LanguageButton'] if ($fmt) { $btnLanguage.Text = $fmt -f $count } } $dialog.Dispose() } $btnLanguage.Add_Click({ $isOffline = $offlineRadioButton.Checked Show-LanguageSelectionDialog -parentForm $form -languages $languages -isOffline $isOffline }) $fmt = $script:translations[$script:currentLanguage]['LanguageButton'] if ($fmt) { $btnLanguage.Text = $fmt -f 1 } $appsGroup = New-Object System.Windows.Forms.GroupBox $appsGroup.Location = New-Object System.Drawing.Point(20, 390) $appsGroup.Size = New-Object System.Drawing.Size(760, 80) $appsGroup.Text = $translations[$script:currentLanguage]['ApplicationsGroup'] $form.Controls.Add($appsGroup) $script:allApps = @( "Word", "Excel", "PowerPoint", "Outlook", "OutlookNew", "OneNote", "Publisher", "Access" ) $script:additionalProducts = @( "Visio", "Project" ) $script:allProducts = $script:allApps + $script:additionalProducts $appCheckboxes = @{} $additionalCheckboxes = @{} $colCount = 5 $checkboxWidth = 140 $checkboxHeight = 25 $margin = 10 for ($i = 0; $i -lt $script:allProducts.Count; $i++) { $row = [Math]::Floor($i / $colCount) $col = $i % $colCount $checkbox = New-Object System.Windows.Forms.CheckBox $productName = $script:allProducts[$i] $displayName = $productName if ($displayName -eq "OutlookNew") { $displayName = "Outlook (New)" } elseif ($displayName -eq "Outlook") { $displayName = "Outlook (Classic)" } elseif ($displayName -eq "Visio") { $displayName = "Visio Pro" } elseif ($displayName -eq "Project") { $displayName = "Project Pro" } $checkbox.Text = $displayName $checkbox.Location = New-Object System.Drawing.Point(($col * ($checkboxWidth + $margin) + $margin), ($row * $checkboxHeight + 20)) $checkbox.Size = New-Object System.Drawing.Size($checkboxWidth, $checkboxHeight) $checkbox.Checked = $false if ($productName -in @("Word", "Excel", "PowerPoint")) { $checkbox.Checked = $true } $checkbox.Visible = $true if ($productName -eq "Visio") { $checkbox.ForeColor = [System.Drawing.Color]::FromArgb(0, 120, 215) # Mavi / Blue $checkbox.Font = New-Object System.Drawing.Font($checkbox.Font.FontFamily, $checkbox.Font.Size, [System.Drawing.FontStyle]::Bold) } elseif ($productName -eq "Project") { $checkbox.ForeColor = [System.Drawing.Color]::FromArgb(237, 125, 49) # Turuncu / Orange $checkbox.Font = New-Object System.Drawing.Font($checkbox.Font.FontFamily, $checkbox.Font.Size, [System.Drawing.FontStyle]::Bold) } if ($productName -in $script:allApps) { $appCheckboxes[$productName] = $checkbox } else { $additionalCheckboxes[$productName] = $checkbox } $appsGroup.Controls.Add($checkbox) } $progressBar = New-Object System.Windows.Forms.ProgressBar $progressBar.Location = New-Object System.Drawing.Point(20, 540) $progressBar.Size = New-Object System.Drawing.Size(760, 25) $progressBar.Style = [System.Windows.Forms.ProgressBarStyle]::Continuous $progressBar.ForeColor = [System.Drawing.Color]::FromArgb(0, 120, 215) # Mavi - daha belirgin / Blue - more prominent $progressBar.BackColor = [System.Drawing.Color]::LightGray $progressBar.Minimum = 0 $progressBar.Maximum = 100 $progressBar.Value = 0 $progressBar.Visible = $true $progressBar.Enabled = $true $progressBar.Step = 1 $form.Controls.Add($progressBar) $form.Add_Shown({ $progressBar.Style = [System.Windows.Forms.ProgressBarStyle]::Continuous $progressBar.Value = 0 $progressBar.Visible = $true $progressBar.Enabled = $true [System.Windows.Forms.Application]::DoEvents() if ($offlineRadioButton.Checked -and -not $script:offlineLanguagesLoaded) { $script:offlineLanguagesLoaded = $true $availableLangs = Get-AvailableOfflineLanguages if ($availableLangs.Count -gt 0) { $script:selectedLanguagesList = $availableLangs $count = $script:selectedLanguagesList.Count $fmt = $script:translations[$script:currentLanguage]['LanguageButton'] if ($fmt) { $btnLanguage.Text = $fmt -f $count } } } }) $statusLabel = New-Object System.Windows.Forms.Label $statusLabel.Location = New-Object System.Drawing.Point(20, 568) $statusLabel.Size = New-Object System.Drawing.Size(760, 20) $statusLabel.Text = $translations[$script:currentLanguage]['Ready'] $statusLabel.BackColor = [System.Drawing.Color]::White $statusLabel.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $form.Controls.Add($statusLabel) $statusLabel.Add_MouseEnter({ $statusLabel.BackColor = [System.Drawing.Color]::FromArgb(230, 230, 250) }) $statusLabel.Add_MouseLeave({ $statusLabel.BackColor = [System.Drawing.Color]::White }) function AddButtonEffects($button) { $originalBackColor = $button.BackColor $button.FlatStyle = [System.Windows.Forms.FlatStyle]::Flat $button.FlatAppearance.BorderSize = 2 $r = $originalBackColor.R $g = $originalBackColor.G $b = $originalBackColor.B $borderColor = [System.Drawing.Color]::FromArgb([Math]::Max(0, $r - 40), [Math]::Max(0, $g - 40), [Math]::Max(0, $b - 40)) $button.FlatAppearance.BorderColor = $borderColor $button.BackColor = $originalBackColor $button.UseVisualStyleBackColor = $false $hoverColor = [System.Drawing.Color]::FromArgb([Math]::Min(255, $r + 30), [Math]::Min(255, $g + 30), [Math]::Min(255, $b + 30)) $clickColor = [System.Drawing.Color]::FromArgb([Math]::Max(0, $r - 20), [Math]::Max(0, $g - 20), [Math]::Max(0, $b - 20)) $button.FlatAppearance.MouseOverBackColor = $hoverColor $button.FlatAppearance.MouseDownBackColor = $clickColor } $installOptionsGroup = New-Object System.Windows.Forms.GroupBox $installOptionsGroup.Location = New-Object System.Drawing.Point(20, 476) $installOptionsGroup.Size = New-Object System.Drawing.Size(240, 60) $installOptionsGroup.Text = $translations[$script:currentLanguage]['InstallOptions'] $form.Controls.Add($installOptionsGroup) $onlineRadioButton = New-Object System.Windows.Forms.RadioButton $onlineRadioButton.Location = New-Object System.Drawing.Point(10, 20) $onlineRadioButton.Size = New-Object System.Drawing.Size(100, 20) $onlineRadioButton.Text = $translations[$script:currentLanguage]['Online'] $installOptionsGroup.Controls.Add($onlineRadioButton) $onlineRadioButton.Add_CheckedChanged({ if ($onlineRadioButton.Checked) { $script:selectedLanguagesList = @("tr-TR") $fmt = $script:translations[$script:currentLanguage]['LanguageButton'] if ($fmt) { $btnLanguage.Text = $fmt -f 1 } } }) $offlineRadioButton = New-Object System.Windows.Forms.RadioButton $offlineRadioButton.Location = New-Object System.Drawing.Point(120, 20) $offlineRadioButton.Size = New-Object System.Drawing.Size(100, 20) $offlineRadioButton.Text = $translations[$script:currentLanguage]['Offline'] $offlineRadioButton.Checked = $true $installOptionsGroup.Controls.Add($offlineRadioButton) $archGroup = New-Object System.Windows.Forms.GroupBox $archGroup.Location = New-Object System.Drawing.Point(290, 340) $archGroup.Size = New-Object System.Drawing.Size(240, 50) $archGroup.Text = $translations[$script:currentLanguage]['Architecture'] $rbX64 = New-Object System.Windows.Forms.RadioButton $rbX64.Location = New-Object System.Drawing.Point(10, 20) $rbX64.Size = New-Object System.Drawing.Size(100, 20) $rbX64.Text = "64 bit (x64)" $rbX86 = New-Object System.Windows.Forms.RadioButton $rbX86.Location = New-Object System.Drawing.Point(120, 20) $rbX86.Size = New-Object System.Drawing.Size(100, 20) $rbX86.Text = "32 bit (x86)" if ([System.Environment]::Is64BitOperatingSystem) { $rbX64.Checked = $true } else { $rbX86.Checked = $true } $archLabel = New-Object System.Windows.Forms.Label $archLabel.Location = New-Object System.Drawing.Point(312, 300) $archLabel.Size = New-Object System.Drawing.Size(220, 40) $archLabel.Text = $translations[$script:currentLanguage]['ArchitectureAutoMessage'] $archLabel.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $archGroup.Controls.Add($archLabel) $archGroup.Controls.AddRange(@($rbX64, $rbX86)) $offlineRadioButton.Add_CheckedChanged({ if ($offlineRadioButton.Checked) { if ([System.Environment]::Is64BitOperatingSystem) { $rbX64.Checked = $true $rbX86.Checked = $false } else { $rbX86.Checked = $true $rbX64.Checked = $false } $offlineInstallButton.Enabled = $true $installButton.Enabled = $false } }) $onlineRadioButton.Add_CheckedChanged({ if ($onlineRadioButton.Checked) { if ([System.Environment]::Is64BitOperatingSystem) { $rbX64.Checked = $true $rbX86.Checked = $false } else { $rbX86.Checked = $true $rbX64.Checked = $false } $installButton.Enabled = $true $offlineInstallButton.Enabled = $false } }) $offlineInstallButton = New-Object System.Windows.Forms.Button $offlineInstallButton.Location = New-Object System.Drawing.Point(270, 480) $offlineInstallButton.Size = New-Object System.Drawing.Size(200, 55) $offlineInstallButton.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $offlineInstallButton.Text = $translations[$script:currentLanguage]['OfflineInstall'] $offlineInstallButton.UseVisualStyleBackColor = $false $offlineInstallButton.BackColor = [System.Drawing.Color]::FromArgb(0, 120, 215) $offlineInstallButton.ForeColor = [System.Drawing.Color]::White $offlineInstallButton.Font = New-Object System.Drawing.Font("Microsoft Sans Serif", 10, [System.Drawing.FontStyle]::Bold) $offlineInstallButton.Visible = $true AddButtonEffects $offlineInstallButton $form.Controls.Add($offlineInstallButton) $LinkLabel1 = New-Object System.Windows.Forms.LinkLabel $LinkLabel1.Location = New-Object System.Drawing.Point(20, 640) $LinkLabel1.Size = New-Object System.Drawing.Size(300, 30) $LinkLabel1.LinkColor = [System.Drawing.Color]::Blue $LinkLabel1.Text = $translations[$script:currentLanguage]['Link'] $LinkLabel1.Add_Click({ Start-Process "https://github.com/abdullah-erturk" Start-Process "https://erturk.netlify.app/" }) $form.Controls.Add($LinkLabel1) $LinkLabel2 = New-Object System.Windows.Forms.LinkLabel $LinkLabel2.Location = New-Object System.Drawing.Point(730, 640) $LinkLabel2.Size = New-Object System.Drawing.Size(300, 30) $LinkLabel2.LinkColor = [System.Drawing.Color]::Blue $LinkLabel2.Text = $translations[$script:currentLanguage]['About'] $LinkLabel2.Add_LinkClicked({ [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['AboutMessage'], $translations[$script:currentLanguage]['AboutTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Information) }) $form.Controls.Add($LinkLabel2) $installButton = New-Object System.Windows.Forms.Button $installButton.Location = New-Object System.Drawing.Point(485, 480) $installButton.Size = New-Object System.Drawing.Size(200, 55) $installButton.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $installButton.Text = $translations[$script:currentLanguage]['Install'] $installButton.UseVisualStyleBackColor = $false $installButton.BackColor = [System.Drawing.Color]::FromArgb(16, 124, 16) $installButton.ForeColor = [System.Drawing.Color]::White $installButton.Font = New-Object System.Drawing.Font("Microsoft Sans Serif", 10, [System.Drawing.FontStyle]::Bold) AddButtonEffects $installButton $form.Controls.Add($installButton) if ($offlineRadioButton.Checked) { $offlineInstallButton.Enabled = $true $installButton.Enabled = $false } else { $installButton.Enabled = $true $offlineInstallButton.Enabled = $false } $exitButton = New-Object System.Windows.Forms.Button $exitButton.Location = New-Object System.Drawing.Point(703, 600) $exitButton.Size = New-Object System.Drawing.Size(77, 30) $exitButton.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $exitButton.Text = $translations[$script:currentLanguage]['Exit'] $exitButton.UseVisualStyleBackColor = $false $exitButton.BackColor = [System.Drawing.Color]::FromArgb(196, 43, 28) $exitButton.ForeColor = [System.Drawing.Color]::White $exitButton.Font = New-Object System.Drawing.Font("Microsoft Sans Serif", 9, [System.Drawing.FontStyle]::Bold) AddButtonEffects $exitButton $form.Controls.Add($exitButton) $checkButton = New-Object System.Windows.Forms.Button $checkButton.Location = New-Object System.Drawing.Point(703, 480) $checkButton.Size = New-Object System.Drawing.Size(77, 55) $checkButton.TextAlign = [System.Drawing.ContentAlignment]::MiddleCenter $checkButton.Text = $translations[$script:currentLanguage]['Check'] $checkButton.UseVisualStyleBackColor = $false $checkButton.BackColor = [System.Drawing.Color]::FromArgb(255, 165, 0) $checkButton.ForeColor = [System.Drawing.Color]::White $checkButton.Font = New-Object System.Drawing.Font("Microsoft Sans Serif", 9, [System.Drawing.FontStyle]::Bold) AddButtonEffects $checkButton $form.Controls.Add($checkButton) $exitButton.Add_Click({ $form.Close() }) $checkButton.Add_Click({ $scriptDir = $PSScriptRoot $checkFilePath = "$scriptDir\Check.bat" if (Test-Path $checkFilePath) { Start-Process $checkFilePath } else { [System.Windows.Forms.MessageBox]::Show("$($translations[$script:currentLanguage]['CheckFileNotFound']) $checkFilePath", $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error) } }) function Get-OfficeClientEdition { if ($rbX64.Checked) { return "64" } elseif ($rbX86.Checked) { return "32" } } function Get-ProductId { param ( [string]$version, [string]$licenseType ) switch ($version) { "office365" { return "O365ProPlusRetail" } default { throw "$($translations[$script:currentLanguage]['UnsupportedOfficeVersion']) $version" } } } function Get-OfficeRootPath { param ( [string]$architecture ) $programFiles = $env:ProgramFiles $programFilesX86 = ${env:ProgramFiles(x86)} $candidatePaths = @() if ($architecture -eq "32") { if ($programFilesX86) { $candidatePaths += (Join-Path $programFilesX86 "Microsoft Office\root") } if ($programFiles) { $candidatePaths += (Join-Path $programFiles "Microsoft Office\root") } } else { if ($programFiles) { $candidatePaths += (Join-Path $programFiles "Microsoft Office\root") } if ($programFilesX86) { $candidatePaths += (Join-Path $programFilesX86 "Microsoft Office\root") } } foreach ($path in $candidatePaths) { if ($path -and (Test-Path $path)) { return $path } } return $null } function Install-VolumeLicenseCertificates { param ( [string]$architecture, [string[]]$additionalProducts = @() ) $officeRoot = Get-OfficeRootPath -architecture $architecture if (-not $officeRoot) { throw $translations[$script:currentLanguage]['OfficeRootNotFound'] } $licensesFolder = Join-Path $officeRoot "Licenses16" if (-not (Test-Path $licensesFolder)) { throw "$($translations[$script:currentLanguage]['LicensesFolderNotFound']) $licensesFolder" } $officeFolder = Join-Path $officeRoot "Office16" if (-not (Test-Path $officeFolder)) { throw "$($translations[$script:currentLanguage]['OfficeFolderNotFound']) $officeFolder" } $osppPath = Join-Path $officeFolder "ospp.vbs" if (-not (Test-Path $osppPath)) { throw "$($translations[$script:currentLanguage]['OsppNotFound']) $osppPath" } function Install-LicenseFiles { param ( [string]$pattern, [string]$description ) $licenseFiles = Get-ChildItem -Path $licensesFolder -Filter $pattern -ErrorAction SilentlyContinue if (-not $licenseFiles -or $licenseFiles.Count -eq 0) { throw "$pattern ($description) $($translations[$script:currentLanguage]['LicenseFileNotFound']) $licensesFolder" } foreach ($licenseFile in $licenseFiles) { $arguments = @("//nologo", "`"$osppPath`"", "/inslic:`"$($licenseFile.FullName)`"") $process = Start-Process -FilePath "cscript.exe" -ArgumentList $arguments -PassThru -WindowStyle Hidden while (-not $process.HasExited) { Start-Sleep -Milliseconds 200 [System.Windows.Forms.Application]::DoEvents() } if ($process.ExitCode -ne 0) { throw "$($licenseFile.Name) $($translations[$script:currentLanguage]['LicenseLoadError']) $($process.ExitCode)" } } } Install-LicenseFiles -pattern "MondoVL_*.xrm-ms" -description "Office 365" if ($additionalProducts -contains "Project") { Install-LicenseFiles -pattern "ProjectProVL*.xrm-ms" -description "Project Pro" } if ($additionalProducts -contains "Visio") { Install-LicenseFiles -pattern "VisioProVL*.xrm-ms" -description "Visio Pro" } } function Get-DownloadPath { param ( [string]$version, [string]$architecture, [string]$channel, [array]$languages, [string]$licenseType ) $path = Join-Path $PSScriptRoot "Office365" if (-not (Test-Path $path)) { try { $null = New-Item -ItemType Directory -Force -Path $path } catch {} } $path = Join-Path $path $architecture if (-not (Test-Path $path)) { try { $null = New-Item -ItemType Directory -Force -Path $path } catch {} } $firstLang = if ($languages -and $languages.Count -gt 0) { $languages[0] } else { "tr-TR" } $path = Join-Path $path $firstLang if (-not (Test-Path $path)) { try { $null = New-Item -ItemType Directory -Force -Path $path } catch {} } return $path } function Get-AvailableOfflineLanguages { $architecture = Get-OfficeClientEdition $office365RootPath = Join-Path $PSScriptRoot "Office365" $architecturePath = Join-Path $office365RootPath $architecture $availableLanguages = @() $validLanguageCodes = $languages.Values if (-not (Test-Path $architecturePath)) { return $availableLanguages } $langDirs = Get-ChildItem -Path $architecturePath -Directory -ErrorAction SilentlyContinue foreach ($langDir in $langDirs) { $officeDataPath = Join-Path $langDir.FullName "Office\Data" if (-not (Test-Path $officeDataPath)) { continue } $versionDir = Get-ChildItem -Path $officeDataPath -Directory -ErrorAction SilentlyContinue | Where-Object { $_.Name -match '^\d+\.\d+\.\d+\.\d+$' } | Select-Object -First 1 if (-not $versionDir) { continue } $archPattern = if ($architecture -eq "64") { "x64" } else { "x86" } $streamFiles = Get-ChildItem -Path $versionDir.FullName -Filter "stream.$archPattern.*.dat" -File -ErrorAction SilentlyContinue foreach ($file in $streamFiles) { if ($file.Name -match "^stream\.$archPattern\.(.+)\.dat$") { $langCode = $matches[1] $matchingLang = $validLanguageCodes | Where-Object { $_ -ieq $langCode } if ($matchingLang -and ($availableLanguages -notcontains $matchingLang)) { $availableLanguages += $matchingLang } } } } return $availableLanguages } function Get-InstallPath { param ( [string]$version, [string]$architecture, [string]$channel, [array]$languages, [string]$licenseType ) $office365RootPath = Join-Path $PSScriptRoot "Office365" $architecturePath = Join-Path $office365RootPath $architecture $archPattern = if ($architecture -eq "64") { "x64" } else { "x86" } if (Test-Path $architecturePath) { $langDirs = Get-ChildItem -Path $architecturePath -Directory -ErrorAction SilentlyContinue foreach ($langDir in $langDirs) { $officeDataPath = Join-Path $langDir.FullName "Office\Data" if (Test-Path $officeDataPath) { $hasRequiredStreams = $true foreach ($lang in $languages) { $streamFilePattern = "stream.$archPattern.*$lang*.dat" $streamFiles = Get-ChildItem -Path $officeDataPath -Filter $streamFilePattern -File -Recurse -ErrorAction SilentlyContinue if ($streamFiles.Count -eq 0) { $hasRequiredStreams = $false break } } if ($hasRequiredStreams) { return $langDir.FullName } } } } return Get-DownloadPath -version $version -architecture $architecture -channel $channel -languages $languages -licenseType $licenseType } function Create-ConfigurationXmlDownload { param ( [string]$basePath, [string]$productId, [string]$architecture, [string]$channel, [array]$languages, [array]$excludeApps, [array]$additionalProducts = @() ) if (-not $basePath.EndsWith("\")) { $basePath += "\" } $clientEdition = ($architecture -replace '[^\d]', '') if ([string]::IsNullOrWhiteSpace($channel)) { $effectiveChannel = "MonthlyEnterprise" } else { $effectiveChannel = $channel } $alwaysExcludeApps = @("OneDrive", "Groove", "Lync") $allExcludeApps = @() if ($excludeApps -and $excludeApps.Count -gt 0) { $allExcludeApps = $excludeApps } # Always exclude apps'i ekle (eğer zaten yoksa) foreach ($app in $alwaysExcludeApps) { if ($app -notin $allExcludeApps) { $allExcludeApps += $app } } $excludeFragment = "" if ($allExcludeApps -and $allExcludeApps.Count -gt 0) { $excludeFragment = ($allExcludeApps | ForEach-Object { " " }) -join "`n" } $languageFragment = "" foreach ($lang in $languages) { $languageFragment += " `n" } $configPath = Join-Path ([System.IO.Path]::GetTempPath()) "configuration_download.xml" $additionalProductsFragment = "" if ($additionalProducts -and $additionalProducts.Count -gt 0) { foreach ($product in $additionalProducts) { $additionalProductId = "" if ($product -eq "Visio") { $additionalProductId = "VisioProRetail" } elseif ($product -eq "Project") { $additionalProductId = "ProjectProRetail" } if ($additionalProductId -ne "") { $additionalProductsFragment += " `n" $additionalProductsFragment += $languageFragment $additionalProductsFragment += " `n" } } } $configXml = @" $languageFragment $excludeFragment $additionalProductsFragment "@ Set-Content -Path $configPath -Value $configXml -Encoding UTF8 return $configPath } function Create-ConfigurationXmlOnline { param ( [string]$productId, [string]$architecture, [string]$channel, [array]$languages, [array]$excludeApps, [array]$additionalProducts = @() ) $clientEdition = ($architecture -replace '[^\d]', '') if ([string]::IsNullOrWhiteSpace($channel)) { $effectiveChannel = "MonthlyEnterprise" } else { $effectiveChannel = $channel } $alwaysExcludeApps = @("OneDrive", "Groove", "Lync") $allExcludeApps = @() if ($excludeApps -and $excludeApps.Count -gt 0) { $allExcludeApps = $excludeApps } foreach ($app in $alwaysExcludeApps) { if ($app -notin $allExcludeApps) { $allExcludeApps += $app } } $excludeFragment = "" if ($allExcludeApps -and $allExcludeApps.Count -gt 0) { $excludeFragment = ($allExcludeApps | ForEach-Object { " " }) -join "`n" } $languageFragment = "" foreach ($lang in $languages) { $languageFragment += " `n" } $configPath = Join-Path ([System.IO.Path]::GetTempPath()) "configuration_online.xml" $additionalProductsFragment = "" if ($additionalProducts -and $additionalProducts.Count -gt 0) { foreach ($product in $additionalProducts) { $additionalProductId = "" if ($product -eq "Visio") { $additionalProductId = "VisioProRetail" } elseif ($product -eq "Project") { $additionalProductId = "ProjectProRetail" } if ($additionalProductId -ne "") { $additionalProductsFragment += " `n" $additionalProductsFragment += $languageFragment $additionalProductsFragment += " `n" } } } $configXml = @" $languageFragment $excludeFragment $additionalProductsFragment "@ Set-Content -Path $configPath -Value $configXml -Encoding UTF8 return $configPath } function Create-ConfigurationXmlOffline { param ( [string]$basePath, [string]$productId, [string]$architecture, [string]$channel, [array]$languages, [array]$excludeApps, [array]$additionalProducts = @() ) if (-not $basePath.EndsWith("\")) { $basePath += "\" } $clientEdition = ($architecture -replace '[^\d]', '') if ([string]::IsNullOrWhiteSpace($channel)) { $effectiveChannel = "MonthlyEnterprise" } else { $effectiveChannel = $channel } $alwaysExcludeApps = @("OneDrive", "Groove", "Lync") $allExcludeApps = @() if ($excludeApps -and $excludeApps.Count -gt 0) { $allExcludeApps = $excludeApps } foreach ($app in $alwaysExcludeApps) { if ($app -notin $allExcludeApps) { $allExcludeApps += $app } } $excludeFragment = "" if ($allExcludeApps -and $allExcludeApps.Count -gt 0) { $excludeFragment = ($allExcludeApps | ForEach-Object { " " }) -join "`n" } $languageFragment = "" foreach ($lang in $languages) { $languageFragment += " `n" } $configPath = Join-Path ([System.IO.Path]::GetTempPath()) "configuration_offline.xml" $additionalProductsFragment = "" if ($additionalProducts -and $additionalProducts.Count -gt 0) { foreach ($product in $additionalProducts) { $additionalProductId = "" if ($product -eq "Visio") { $additionalProductId = "VisioProRetail" } elseif ($product -eq "Project") { $additionalProductId = "ProjectProRetail" } if ($additionalProductId -ne "") { $additionalProductsFragment += " `n" $additionalProductsFragment += $languageFragment $additionalProductsFragment += " `n" } } } $configXml = @" $languageFragment $excludeFragment $additionalProductsFragment "@ Set-Content -Path $configPath -Value $configXml -Encoding UTF8 return $configPath } function Test-OfficeInstalled { $paths = @( "$Env:ProgramFiles\Microsoft Office\root\Office16\WINWORD.EXE", "$Env:ProgramFiles(x86)\Microsoft Office\root\Office16\WINWORD.EXE" ) foreach ($p in $paths) { if (Test-Path $p) { return $true } } return $false } function Lock-Buttons { param([bool]$lock) $offlineInstallButton.Enabled = -not $lock $installButton.Enabled = -not $lock $exitButton.Enabled = -not $lock $checkButton.Enabled = -not $lock if ($licenseGroup) { $licenseGroup.Enabled = -not $lock } if ($languageGroup) { $languageGroup.Enabled = -not $lock } if ($archGroup) { $archGroup.Enabled = -not $lock } if ($appsGroup) { $appsGroup.Enabled = -not $lock } if ($installOptionsGroup) { $installOptionsGroup.Enabled = -not $lock } } $script:progressTimer = $null $script:progressValue = 0 $script:isProgressAnimating = $false function Start-ProgressAnimation { $script:isProgressAnimating = $true $script:progressValue = 0 $progressBar.Style = [System.Windows.Forms.ProgressBarStyle]::Continuous $progressBar.Minimum = 0 $progressBar.Maximum = 100 $progressBar.Value = 0 $script:progressTimer = New-Object System.Windows.Forms.Timer $script:progressTimer.Interval = 50 # 50ms'de bir güncelle $script:progressTimer.Add_Tick({ if ($script:isProgressAnimating) { $script:progressValue += 2 if ($script:progressValue -gt 100) { $script:progressValue = 0 } $progressBar.Value = $script:progressValue $progressBar.Invalidate() $progressBar.Update() } }) $script:progressTimer.Start() } function Stop-ProgressAnimation { if ($script:progressTimer -ne $null) { $script:progressTimer.Stop() $script:progressTimer.Dispose() $script:progressTimer = $null } $script:isProgressAnimating = $false $progressBar.Style = [System.Windows.Forms.ProgressBarStyle]::Continuous $progressBar.Value = 100 } function Show-DetailedErrorMessage { param( [int]$ExitCode ) if ($ExitCode -eq 1603) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['ErrorCode1603'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error ) } else { # Diğer hata kodları için genel mesaj [System.Windows.Forms.MessageBox]::Show( "$($translations[$script:currentLanguage]['InstallationFailed']) $ExitCode", $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error ) } } $offlineInstallButton.Add_Click({ $selectedVersion = "office365" $architecture = Get-OfficeClientEdition $licenseType = if ($rbRetail.Checked) { "Retail" } else { "Volume" } $selectedLanguages = $script:selectedLanguagesList # Use global variable if ($selectedLanguages.Count -eq 0) { [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['SelectLanguage'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning) return } if ($selectedLanguages.Count -gt 9) { [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['MaxLanguages'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning) return } $availableOfflineLangs = Get-AvailableOfflineLanguages if ($availableOfflineLangs.Count -gt 0) { $missingLangs = $selectedLanguages | Where-Object { $_ -notin $availableOfflineLangs } if ($missingLangs.Count -gt 0) { $missingLangNames = ($languages.GetEnumerator() | Where-Object { $missingLangs -contains $_.Value } | Select-Object -ExpandProperty Key) -join ", " $validLangs = $selectedLanguages | Where-Object { $_ -in $availableOfflineLangs } if ($validLangs.Count -eq 0) { $selectedLanguages = $availableOfflineLangs } else { $selectedLanguages = $validLangs } $usingLangNames = ($languages.GetEnumerator() | Where-Object { $selectedLanguages -contains $_.Value } | Select-Object -ExpandProperty Key) -join ", " $msg = ($translations[$script:currentLanguage]['OfflineLanguageMismatch'] -f $missingLangNames) + "`n`n" + ($translations[$script:currentLanguage]['UsingAvailableLanguage'] -f $usingLangNames) [System.Windows.Forms.MessageBox]::Show($msg, $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Information) } } $languageIds = $selectedLanguages $selectedApps = $appCheckboxes.GetEnumerator() | Where-Object { $_.Value.Checked } | Select-Object -ExpandProperty Key $selectedAdditionalProducts = $additionalCheckboxes.GetEnumerator() | Where-Object { $_.Value.Checked } | Select-Object -ExpandProperty Key $excludeApps = $script:allApps | Where-Object { $_ -notin $selectedApps } if ("Outlook" -in $selectedApps -and "OutlookNew" -notin $selectedApps) { if ("OutlookNew" -notin $excludeApps) { $excludeApps += "OutlookNew" } } elseif ("OutlookNew" -in $selectedApps -and "Outlook" -notin $selectedApps) { if ("Outlook" -notin $excludeApps) { $excludeApps += "Outlook" } } $selectedLanguageNames = ($languages.GetEnumerator() | Where-Object { $selectedLanguages -contains $_.Value } | Select-Object -ExpandProperty Key | Sort-Object) -join ', ' $confirmationMessage = "$($translations[$script:currentLanguage]['OfficeVersion']) $selectedVersion`n$($translations[$script:currentLanguage]['ArchitectureLabel']) $architecture`n$($translations[$script:currentLanguage]['LicenseTypeLabel']) $licenseType`n$($translations[$script:currentLanguage]['SelectedLanguages']) $selectedLanguageNames`n$($translations[$script:currentLanguage]['SelectedApplications']) $($selectedApps -join ', ')" if ($selectedAdditionalProducts.Count -gt 0) { $confirmationMessage += "`n$($translations[$script:currentLanguage]['AdditionalProducts']) $($selectedAdditionalProducts -join ', ')" } $userResponse = [System.Windows.Forms.MessageBox]::Show($confirmationMessage, $translations[$script:currentLanguage]['ConfirmInstallation'], [System.Windows.Forms.MessageBoxButtons]::OKCancel, [System.Windows.Forms.MessageBoxIcon]::Information) if ($userResponse -ne [System.Windows.Forms.DialogResult]::OK) { return } $installPath = Get-InstallPath -version $selectedVersion -architecture $architecture -channel $channel -languages $languageIds -licenseType $licenseType $productId = Get-ProductId -version $selectedVersion -licenseType $licenseType $office365RootPath = Join-Path $PSScriptRoot "Office365" if (-not (Test-Path $office365RootPath)) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } $architecturePath = Join-Path $office365RootPath $architecture if (-not (Test-Path $architecturePath)) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } if (-not (Test-Path $installPath)) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } $officeDataPath = Join-Path $installPath "Office\Data" if (-not (Test-Path $officeDataPath)) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } try { $filesInDataDirectory = @(Get-ChildItem -Path $officeDataPath -File -Recurse -ErrorAction SilentlyContinue) if ($filesInDataDirectory.Count -eq 0) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } } catch { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } $setupPathRoot = Join-Path $PSScriptRoot "setup.exe" if (-not (Test-Path $setupPathRoot)) { [System.Windows.Forms.MessageBox]::Show( $translations[$script:currentLanguage]['OfflineFilesNotFound'], $translations[$script:currentLanguage]['OfflineFilesNotFoundTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning ) return } try { $configPath = Create-ConfigurationXmlOffline -basePath $installPath -productId $productId -architecture $architecture -channel $channel -languages $languageIds -excludeApps $excludeApps -additionalProducts $selectedAdditionalProducts $statusLabel.Text = $translations[$script:currentLanguage]['Installing'] Lock-Buttons -lock $true Stop-ProgressAnimation $progressBar.Visible = $true $progressBar.Enabled = $true Start-ProgressAnimation [System.Windows.Forms.Application]::DoEvents() $setupPath = Join-Path $PSScriptRoot "setup.exe" if (-not (Test-Path $setupPath)) { Lock-Buttons -lock $false throw "$($translations[$script:currentLanguage]['SetupExeNotFound']) $setupPath" } $process = Start-Process -FilePath $setupPath -ArgumentList "/configure `"$configPath`"" -PassThru -WindowStyle Hidden while (-not $process.HasExited) { Start-Sleep -Milliseconds 200 if ($progressBar.Style -eq [System.Windows.Forms.ProgressBarStyle]::Marquee) { $progressBar.Invalidate() $progressBar.Update() } [System.Windows.Forms.Application]::DoEvents() } Stop-ProgressAnimation if ($process.ExitCode -eq 0 -or (Test-OfficeInstalled)) { $statusLabel.Text = $translations[$script:currentLanguage]['OfficeConfiguring'] # Animasyonu devam ettir if (-not $script:isProgressAnimating) { Start-ProgressAnimation } [System.Windows.Forms.Application]::DoEvents() Start-Sleep -Seconds 3 try { $verifyProcess = Start-Process -FilePath $setupPath -ArgumentList "/repair" -PassThru -WindowStyle Hidden -ErrorAction SilentlyContinue if ($verifyProcess) { $timeout = 30 $elapsed = 0 while (-not $verifyProcess.HasExited -and $elapsed -lt $timeout) { Start-Sleep -Seconds 1 $elapsed++ [System.Windows.Forms.Application]::DoEvents() } if (-not $verifyProcess.HasExited) { $verifyProcess.Kill() } } } catch { } Start-Sleep -Seconds 1 Stop-ProgressAnimation try { $regPathClickToRun = "HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" try { if (-not (Test-Path $regPathClickToRun)) { New-Item -Path $regPathClickToRun -Force | Out-Null } Set-ItemProperty -Path $regPathClickToRun -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop } catch { # ClickToRun yazma hatası görmezden gel (yönetici hakları gerekebilir) } $regPaths = @( "HKCU:\Software\Microsoft\Office\Common\UserInfo", "HKCU:\Software\Microsoft\Office\16.0\Common\UserInfo", "HKCU:\Software\Microsoft\Office\15.0\Common\UserInfo" ) foreach ($regPath in $regPaths) { try { if (-not (Test-Path $regPath)) { New-Item -Path $regPath -Force | Out-Null } Set-ItemProperty -Path $regPath -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop Set-ItemProperty -Path $regPath -Name "CompanyName" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop } catch { } } try { $regPathsLM = @( "HKLM:\SOFTWARE\Microsoft\Office\Common\UserInfo", "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Office\Common\UserInfo" ) foreach ($regPathLM in $regPathsLM) { if (-not (Test-Path $regPathLM)) { New-Item -Path $regPathLM -Force | Out-Null } Set-ItemProperty -Path $regPathLM -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction SilentlyContinue } } catch { } } catch { } if ($licenseType -eq "Volume") { $progressRestarted = $false if (-not $script:isProgressAnimating) { Start-ProgressAnimation $progressRestarted = $true } try { $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseLoading'] [System.Windows.Forms.Application]::DoEvents() Install-VolumeLicenseCertificates -architecture $architecture -additionalProducts $selectedAdditionalProducts $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseSuccess'] Start-Sleep -Seconds 1 } catch { $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseError'] $statusLabel1.Text = $_.Exception.Message } finally { if ($progressRestarted) { Stop-ProgressAnimation } } } if ($licenseType -eq "Volume") { $progressRestarted = $false if (-not $script:isProgressAnimating) { Start-ProgressAnimation $progressRestarted = $true } try { $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseLoading'] [System.Windows.Forms.Application]::DoEvents() Install-VolumeLicenseCertificates -architecture $architecture -additionalProducts $selectedAdditionalProducts $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseSuccess'] Start-Sleep -Seconds 1 } catch { $statusLabel.Text = $translations[$script:currentLanguage]['VolumeLicenseError'] $statusLabel1.Text = $_.Exception.Message } finally { if ($progressRestarted) { Stop-ProgressAnimation } } } $statusLabel.Text = $translations[$script:currentLanguage]['InstallComplete'] [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['InstallationSuccess'], $translations[$script:currentLanguage]['AboutTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Information) } else { $statusLabel.Text = $translations[$script:currentLanguage]['Error'] Show-DetailedErrorMessage -ExitCode $process.ExitCode } Lock-Buttons -lock $false if (Test-Path $configPath) { Remove-Item -Path $configPath -Force } } catch { Lock-Buttons -lock $false Stop-ProgressAnimation $statusLabel.Text = $translations[$script:currentLanguage]['Error'] [System.Windows.Forms.MessageBox]::Show($_.Exception.Message, $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error) } }) $installButton.Add_Click({ $internetConnection = Test-Connection -ComputerName "google.com" -Count 1 -Quiet if (-not $internetConnection) { [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['NoInternetConnection'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error) return } $selectedVersion = "office365" $architecture = Get-OfficeClientEdition $licenseType = if ($rbRetail.Checked) { "Retail" } else { "Volume" } $channel = $cmbChannel.SelectedItem $selectedLanguages = $script:selectedLanguagesList if ($selectedLanguages.Count -eq 0) { [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['SelectLanguage'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning) return } if ($selectedLanguages.Count -gt 9) { [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['MaxLanguages'], $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Warning) return } $languageIds = $selectedLanguages $licenseType = if ($rbRetail.Checked) { "Retail" } else { "Volume" } $channel = $cmbChannel.SelectedItem $selectedApps = $appCheckboxes.GetEnumerator() | Where-Object { $_.Value.Checked } | Select-Object -ExpandProperty Key $selectedAdditionalProducts = $additionalCheckboxes.GetEnumerator() | Where-Object { $_.Value.Checked } | Select-Object -ExpandProperty Key $excludeApps = $script:allApps | Where-Object { $_ -notin $selectedApps } if ("Outlook" -in $selectedApps -and "OutlookNew" -notin $selectedApps) { if ("OutlookNew" -notin $excludeApps) { $excludeApps += "OutlookNew" } } elseif ("OutlookNew" -in $selectedApps -and "Outlook" -notin $selectedApps) { if ("Outlook" -notin $excludeApps) { $excludeApps += "Outlook" } } $selectedLanguageNames = ($languages.GetEnumerator() | Where-Object { $selectedLanguages -contains $_.Value } | Select-Object -ExpandProperty Key | Sort-Object) -join ', ' $confirmationMessage = "$($translations[$script:currentLanguage]['OfficeVersion']) $selectedVersion`n$($translations[$script:currentLanguage]['ArchitectureLabel']) $architecture`n$($translations[$script:currentLanguage]['LicenseTypeLabel']) $licenseType`n$($translations[$script:currentLanguage]['SelectedLanguages']) $selectedLanguageNames`n$($translations[$script:currentLanguage]['SelectedApplications']) $($selectedApps -join ', ')" if ($selectedAdditionalProducts.Count -gt 0) { $confirmationMessage += "`n$($translations[$script:currentLanguage]['AdditionalProducts']) $($selectedAdditionalProducts -join ', ')" } $userResponse = [System.Windows.Forms.MessageBox]::Show($confirmationMessage, $translations[$script:currentLanguage]['ConfirmDownload'], [System.Windows.Forms.MessageBoxButtons]::OKCancel, [System.Windows.Forms.MessageBoxIcon]::Information) if ($userResponse -ne [System.Windows.Forms.DialogResult]::OK) { return } $downloadPath = Get-DownloadPath -version $selectedVersion -architecture $architecture -channel $channel -languages $languageIds -licenseType $licenseType $productId = Get-ProductId -version $selectedVersion -licenseType $licenseType try { $configPathDownload = Create-ConfigurationXmlDownload -basePath $downloadPath -productId $productId -architecture $architecture -channel $channel -languages $languageIds -excludeApps $excludeApps -additionalProducts $selectedAdditionalProducts $statusLabel.Text = $translations[$script:currentLanguage]['Downloading'] Lock-Buttons -lock $true Stop-ProgressAnimation $progressBar.Visible = $true $progressBar.Enabled = $true Start-ProgressAnimation [System.Windows.Forms.Application]::DoEvents() $setupPath = Join-Path $PSScriptRoot "setup.exe" if (-not (Test-Path $setupPath)) { Lock-Buttons -lock $false throw "$($translations[$script:currentLanguage]['SetupExeNotFound']) $setupPath" } $process = Start-Process -FilePath $setupPath -ArgumentList "/download `"$configPathDownload`"" -PassThru -WindowStyle Hidden while (-not $process.HasExited) { Start-Sleep -Milliseconds 200 if ($progressBar.Style -eq [System.Windows.Forms.ProgressBarStyle]::Marquee) { $progressBar.Invalidate() $progressBar.Update() } [System.Windows.Forms.Application]::DoEvents() } if ($process.ExitCode -ne 0) { Lock-Buttons -lock $false Stop-ProgressAnimation throw "$($translations[$script:currentLanguage]['DownloadFailed']) $($process.ExitCode)" } Stop-ProgressAnimation $statusLabel.Text = $translations[$script:currentLanguage]['DownloadComplete'] Lock-Buttons -lock $false if (Test-Path $configPathDownload) { Remove-Item -Path $configPathDownload -Force } $installResponse = [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['DownloadCompleteQuestion'], $translations[$script:currentLanguage]['ContinueInstallation'], [System.Windows.Forms.MessageBoxButtons]::YesNo, [System.Windows.Forms.MessageBoxIcon]::Question) if ($installResponse -ne [System.Windows.Forms.DialogResult]::Yes) { Lock-Buttons -lock $false return } $installPath = Get-InstallPath -version $selectedVersion -architecture $architecture -channel $channel -languages $languageIds -licenseType $licenseType if ($offlineRadioButton.Checked) { $configPathInstall = Create-ConfigurationXmlOffline -basePath $installPath -productId $productId -architecture $architecture -channel $channel -languages $languageIds -excludeApps $excludeApps -additionalProducts $selectedAdditionalProducts } else { $configPathInstall = Create-ConfigurationXmlOnline -productId $productId -architecture $architecture -channel $channel -languages $languageIds -excludeApps $excludeApps -additionalProducts $selectedAdditionalProducts } $statusLabel.Text = $translations[$script:currentLanguage]['Installing'] Lock-Buttons -lock $true Stop-ProgressAnimation $progressBar.Visible = $true $progressBar.Enabled = $true Start-ProgressAnimation [System.Windows.Forms.Application]::DoEvents() $processInstall = Start-Process -FilePath $setupPath -ArgumentList "/configure `"$configPathInstall`"" -PassThru -WindowStyle Hidden while (-not $processInstall.HasExited) { Start-Sleep -Milliseconds 200 [System.Windows.Forms.Application]::DoEvents() } Stop-ProgressAnimation if ($processInstall.ExitCode -eq 0 -or (Test-OfficeInstalled)) { $statusLabel.Text = $translations[$script:currentLanguage]['OfficeConfiguring'] if (-not $script:isProgressAnimating) { Start-ProgressAnimation } [System.Windows.Forms.Application]::DoEvents() Start-Sleep -Seconds 3 try { $verifyProcess = Start-Process -FilePath $setupPath -ArgumentList "/repair" -PassThru -WindowStyle Hidden -ErrorAction SilentlyContinue if ($verifyProcess) { $timeout = 30 $elapsed = 0 while (-not $verifyProcess.HasExited -and $elapsed -lt $timeout) { Start-Sleep -Seconds 1 $elapsed++ [System.Windows.Forms.Application]::DoEvents() } if (-not $verifyProcess.HasExited) { $verifyProcess.Kill() } } } catch { } Start-Sleep -Seconds 1 Stop-ProgressAnimation try { $regPathClickToRun = "HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration" try { if (-not (Test-Path $regPathClickToRun)) { New-Item -Path $regPathClickToRun -Force | Out-Null } Set-ItemProperty -Path $regPathClickToRun -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop } catch { } $regPaths = @( "HKCU:\Software\Microsoft\Office\Common\UserInfo", "HKCU:\Software\Microsoft\Office\16.0\Common\UserInfo", "HKCU:\Software\Microsoft\Office\15.0\Common\UserInfo" ) foreach ($regPath in $regPaths) { try { if (-not (Test-Path $regPath)) { New-Item -Path $regPath -Force | Out-Null } Set-ItemProperty -Path $regPath -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop Set-ItemProperty -Path $regPath -Name "CompanyName" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction Stop } catch { } } try { $regPathsLM = @( "HKLM:\SOFTWARE\Microsoft\Office\Common\UserInfo", "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Office\Common\UserInfo" ) foreach ($regPathLM in $regPathsLM) { if (-not (Test-Path $regPathLM)) { New-Item -Path $regPathLM -Force | Out-Null } Set-ItemProperty -Path $regPathLM -Name "Company" -Value "Ardahan Üniversitesi" -Type String -Force -ErrorAction SilentlyContinue } } catch { } } catch { } $statusLabel.Text = $translations[$script:currentLanguage]['InstallComplete'] [System.Windows.Forms.MessageBox]::Show($translations[$script:currentLanguage]['InstallationSuccess'], $translations[$script:currentLanguage]['AboutTitle'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Information) $scriptDir = $PSScriptRoot $batFilePath = "$scriptDir\kampus_KMS.bat" if (Test-Path $batFilePath) { Start-Process $batFilePath } } else { $statusLabel.Text = $translations[$script:currentLanguage]['Error'] Show-DetailedErrorMessage -ExitCode $processInstall.ExitCode } Lock-Buttons -lock $false if (Test-Path $configPathInstall) { Remove-Item -Path $configPathInstall -Force } } catch { Lock-Buttons -lock $false Stop-ProgressAnimation $statusLabel.Text = $translations[$script:currentLanguage]['Error'] [System.Windows.Forms.MessageBox]::Show($_.Exception.Message, $translations[$script:currentLanguage]['Error'], [System.Windows.Forms.MessageBoxButtons]::OK, [System.Windows.Forms.MessageBoxIcon]::Error) } }) $statusLabel1 = New-Object System.Windows.Forms.Label $statusLabel1.AutoSize = $true $statusLabel1.Location = New-Object System.Drawing.Point(20, 600) $statusLabel1.Size = New-Object System.Drawing.Size(800, 400) $statusLabel1.Name = "statusLabel1" $statusLabel1.TabIndex = 0 $statusLabel1.Text = "" function Kontrol-Kosullari { $testFile = Join-Path $PSScriptRoot ".writable_test_$(Get-Random).tmp" $isReadOnly = $false try { $null = New-Item -Path $testFile -ItemType File -Force -ErrorAction Stop Remove-Item -Path $testFile -Force -ErrorAction Stop $isReadOnly = $false } catch { $isReadOnly = $true if (Test-Path $testFile) { try { Remove-Item -Path $testFile -Force -ErrorAction SilentlyContinue } catch { } } } $isReadOnly = $false if ($isReadOnly) { $statusLabel1.Text = $translations[$script:currentLanguage]['ReadOnlyEnvironmentMessage'] $installOptionsGroup.Enabled = $false $installButton.Enabled = $false $offlineInstallButton.Enabled = $true $btnLanguage.Enabled = $true $onlineRadioButton.Enabled = $false $offlineRadioButton.Checked = $true $onlineRadioButton.Checked = $false } else { $statusLabel1.Text = "" $installOptionsGroup.Enabled = $true $btnLanguage.Enabled = $true $onlineRadioButton.Enabled = $true if ($offlineRadioButton.Checked) { $offlineInstallButton.Enabled = $true $installButton.Enabled = $false } else { $installButton.Enabled = $true $offlineInstallButton.Enabled = $false } } } Kontrol-Kosullari $form.Controls.AddRange(@( $licenseGroup, $archGroup, $languageGroup, $appsGroup, $installOptionsGroup, $installButton, $offlineInstallButton, $exitButton, $checkButton, $progressBar, $statusLabel, $statusLabel1, $richTextBox, $archLabel )) Switch-Language -lang $script:currentLanguage [void]$form.ShowDialog()