aboutsummaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorSergey Chebotar <s.chebotar@gmail.com>2021-12-17 09:07:03 +0300
committerSergey Chebotar <s.chebotar@gmail.com>2021-12-17 09:07:03 +0300
commit2511d1b4440d7c450eb50e1eafdc2ac11b42a5e0 (patch)
tree543694588518f9da42b82c919ffc014425c705a5 /Source
parente175a634cefc6e8c0ecd49514a89b1d4f30ce33b (diff)
Add RegistryUtil
Diffstat (limited to 'Source')
-rw-r--r--Source/AddIn/AddIn.cs18
-rw-r--r--Source/AddIn/RegistryUtil.cs76
2 files changed, 78 insertions, 16 deletions
diff --git a/Source/AddIn/AddIn.cs b/Source/AddIn/AddIn.cs
index 5cae777..7a2be5d 100644
--- a/Source/AddIn/AddIn.cs
+++ b/Source/AddIn/AddIn.cs
@@ -1,7 +1,6 @@
using ExcelDna.Integration;
using ExcelDna.IntelliSense;
using ExcelDna.Registration;
-using Microsoft.Win32;
using System.Net.Http;
namespace RehauSku
@@ -18,13 +17,12 @@ namespace RehauSku
public class AddIn : IExcelAddIn
{
public static readonly HttpClient httpClient = new HttpClient();
- public static ResponseOrder StoreResponse { get; set; }
- public static string PriceListPath { get; set; }
+ public static ResponseOrder StoreResponseOrder = RegistryUtil.StoreResponseOrder;
+ public static string PriceListPath = RegistryUtil.PriceListPath;
public void AutoOpen()
{
RegisterFunctions();
- GetRegistryKeys();
IntelliSenseServer.Install();
}
@@ -39,17 +37,5 @@ namespace RehauSku
.ProcessAsyncRegistrations(nativeAsyncIfAvailable: false)
.RegisterFunctions();
}
-
- void GetRegistryKeys()
- {
- RegistryKey addInKeys = Registry
- .CurrentUser
- .OpenSubKey("SOFTWARE")
- .OpenSubKey("REHAU")
- .OpenSubKey("SkuAssist");
-
- StoreResponse = (ResponseOrder)addInKeys.GetValue("ResponseOrder");
- PriceListPath = (string)addInKeys.GetValue("PriceListPath");
- }
}
}
diff --git a/Source/AddIn/RegistryUtil.cs b/Source/AddIn/RegistryUtil.cs
new file mode 100644
index 0000000..105d5af
--- /dev/null
+++ b/Source/AddIn/RegistryUtil.cs
@@ -0,0 +1,76 @@
+using Microsoft.Win32;
+
+namespace RehauSku
+{
+ static class RegistryUtil
+ {
+ public static string PriceListPath
+ {
+ get
+ {
+ _GetRootKey();
+
+ if (_RootKey == null)
+ {
+ return @"D:\Dropbox\Рабочее\Таблица заказов ИС EAE_2021.xlsm";
+ }
+
+ else return (string)_RootKey.GetValue("PriceListPath");
+ }
+
+ private set
+ {
+ _GetRootKey();
+
+ if (_RootKey == null)
+ {
+ RegistryKey PriceListPath = Registry.CurrentUser
+ .CreateSubKey("SOFTWARE")
+ .CreateSubKey("REHAU")
+ .CreateSubKey("SkuAssist");
+ }
+
+ _RootKey.SetValue("PriceListPath", value);
+ }
+ }
+
+ public static ResponseOrder StoreResponseOrder
+ {
+ get
+ {
+ _GetRootKey();
+
+ if (_RootKey == null)
+ {
+ return ResponseOrder.Default;
+ }
+
+ return (ResponseOrder)_RootKey.GetValue("ResponseOrder");
+ }
+
+ private set
+ {
+ if (_RootKey == null)
+ {
+ RegistryKey PriceListPath = Registry.CurrentUser
+ .CreateSubKey("SOFTWARE")
+ .CreateSubKey("REHAU")
+ .CreateSubKey("SkuAssist");
+ }
+
+ _RootKey.SetValue("ResponseOrder", value);
+ }
+ }
+
+ private static RegistryKey _RootKey { get; set; }
+
+ private static void _GetRootKey()
+ {
+ _RootKey = Registry
+ .CurrentUser
+ .OpenSubKey("SOFTWARE")
+ .OpenSubKey("REHAU")
+ .OpenSubKey("SkuAssist");
+ }
+ }
+}