Compare commits

...

2 Commits

Author SHA1 Message Date
duffyduck df13ddf6b1 Release v0.0.0.22 2026-04-03 19:38:02 +02:00
duffyduck c08a625348 Write Outlook security keys to both Policies and normal user path
On Terminal Servers, normal users cannot write to HKCU\Software\
Policies. Now also writes to HKCU\Software\Microsoft\Office\...\
Security which is always writable and also read by Outlook.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 19:37:26 +02:00
4 changed files with 42 additions and 28 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
; Erfordert Inno Setup 6.x (https://jrsoftware.org/isinfo.php) ; Erfordert Inno Setup 6.x (https://jrsoftware.org/isinfo.php)
#define MyAppName "Starface Outlook Sync" #define MyAppName "Starface Outlook Sync"
#define MyAppVersion "0.0.0.21" #define MyAppVersion "0.0.0.22"
#define MyAppPublisher "HackerSoft - Hacker-Net Telekommunikation" #define MyAppPublisher "HackerSoft - Hacker-Net Telekommunikation"
#define MyAppURL "https://www.hacker-net.de" #define MyAppURL "https://www.hacker-net.de"
#define MyAppExeName "StarfaceOutlookSync.exe" #define MyAppExeName "StarfaceOutlookSync.exe"
+32 -18
View File
@@ -42,37 +42,50 @@ namespace StarfaceOutlookSync.Models
public void ApplyOutlookSecuritySetting() public void ApplyOutlookSecuritySetting()
{ {
// Alle Office-Versionen abdecken (16.0 = 2016/2019/2021/2024/365, 15.0 = 2013) // Alle Office-Versionen abdecken (16.0 = 2016/2019/2021/2024/365, 15.0 = 2013)
// Beide Pfade versuchen: Policies (GPO-Pfad) und direkt (normaler User-Pfad)
var versions = new[] { "16.0", "15.0" }; var versions = new[] { "16.0", "15.0" };
var prefixes = new[]
{
@"Software\Policies\Microsoft\Office", // GPO-Pfad (braucht ggf. Rechte)
@"Software\Microsoft\Office" // Normaler User-Pfad (immer schreibbar)
};
var securityValues = new (string name, int value)[]
{
("ObjectModelGuard", 2),
("PromptOOMAddressBookAccess", 2),
("PromptOOMAddressInformationAccess", 2),
("PromptOOMSend", 2),
("PromptOOMSaveAs", 2),
("PromptOOMFormulaAccess", 2),
("PromptOOMCustomAction", 2),
("PromptSimpleMAPISend", 2),
("PromptSimpleMAPINameResolve", 2),
("PromptSimpleMAPIOpenMessage", 2),
("AdminSecurityMode", 3),
};
foreach (var ver in versions) foreach (var ver in versions)
{ {
foreach (var prefix in prefixes)
{
var regPath = $@"{prefix}\{ver}\Outlook\Security";
try try
{ {
var regPath = $@"Software\Policies\Microsoft\Office\{ver}\Outlook\Security";
if (AutoAcceptOutlookPrompt) if (AutoAcceptOutlookPrompt)
{ {
var key = Registry.CurrentUser.CreateSubKey(regPath); var key = Registry.CurrentUser.CreateSubKey(regPath);
key.SetValue("ObjectModelGuard", 2, RegistryValueKind.DWord); if (key != null)
key.SetValue("PromptOOMAddressBookAccess", 2, RegistryValueKind.DWord); {
key.SetValue("PromptOOMAddressInformationAccess", 2, RegistryValueKind.DWord); foreach (var (name, value) in securityValues)
key.SetValue("PromptOOMSend", 2, RegistryValueKind.DWord); key.SetValue(name, value, RegistryValueKind.DWord);
key.SetValue("PromptOOMSaveAs", 2, RegistryValueKind.DWord);
key.SetValue("PromptOOMFormulaAccess", 2, RegistryValueKind.DWord);
key.SetValue("PromptOOMCustomAction", 2, RegistryValueKind.DWord);
key.SetValue("PromptSimpleMAPISend", 2, RegistryValueKind.DWord);
key.SetValue("PromptSimpleMAPINameResolve", 2, RegistryValueKind.DWord);
key.SetValue("PromptSimpleMAPIOpenMessage", 2, RegistryValueKind.DWord);
key.SetValue("AdminSecurityMode", 3, RegistryValueKind.DWord);
key.Close(); key.Close();
} }
}
else else
{ {
try try { Registry.CurrentUser.DeleteSubKey(regPath, false); } catch { }
{
Registry.CurrentUser.DeleteSubKey(regPath, false);
}
catch { }
} }
} }
catch { } catch { }
@@ -80,3 +93,4 @@ namespace StarfaceOutlookSync.Models
} }
} }
} }
}
@@ -7,9 +7,9 @@
<AssemblyTitle>Starface Outlook Sync</AssemblyTitle> <AssemblyTitle>Starface Outlook Sync</AssemblyTitle>
<Company>HackerSoft - Hacker-Net Telekommunikation</Company> <Company>HackerSoft - Hacker-Net Telekommunikation</Company>
<Product>Starface Outlook Sync</Product> <Product>Starface Outlook Sync</Product>
<Version>0.0.0.21</Version> <Version>0.0.0.22</Version>
<AssemblyVersion>0.0.0.21</AssemblyVersion> <AssemblyVersion>0.0.0.22</AssemblyVersion>
<FileVersion>0.0.0.21</FileVersion> <FileVersion>0.0.0.22</FileVersion>
<Description>Synchronisiert Outlook-Kontakte mit Starface Telefonanlage</Description> <Description>Synchronisiert Outlook-Kontakte mit Starface Telefonanlage</Description>
<Copyright>Stefan Hacker - HackerSoft</Copyright> <Copyright>Stefan Hacker - HackerSoft</Copyright>
<RuntimeIdentifier>win-x64</RuntimeIdentifier> <RuntimeIdentifier>win-x64</RuntimeIdentifier>
+1 -1
View File
@@ -27,7 +27,7 @@ namespace StarfaceOutlookSync.UI
var lblVersion = new Label var lblVersion = new Label
{ {
Text = "Version 0.0.0.21", Text = "Version 0.0.0.22",
Left = 0, Top = 56, Width = 340, Height = 20, Left = 0, Top = 56, Width = 340, Height = 20,
TextAlign = ContentAlignment.MiddleCenter, TextAlign = ContentAlignment.MiddleCenter,
ForeColor = Color.Gray ForeColor = Color.Gray