new regions and starting to split to functions

This commit is contained in:
2021-10-09 12:55:15 +03:00
parent 415838753c
commit 060c8ccc4e
2 changed files with 30 additions and 47 deletions

View File

@@ -1,84 +1,58 @@
namespace Installizer
{
class Registrayzier
{
namespace Installizer {
class Registrayzier {
private string regJson;
private string[] regFiles;
private System.Collections.Generic.List<System.Collections.Generic.Dictionary<string, string>> listOfRegistries = new();
public Registrayzier(string Folder)
{
public Registrayzier(string Folder) {
this.regFiles = System.IO.Directory.GetFiles(Folder, "*.reg", System.IO.SearchOption.AllDirectories);
}
private string[] CropLocations(string regFileText)
{
private string[] CropLocations(string regFileText) {
return regFileText.Split("[")[1..^0];
}
private string GetKey(string regFileText)
{
private string GetKey(string regFileText) {
regFileText = regFileText.Replace(@"\", @"\\");
if (regFileText.StartsWith("hk"))
{
if (regFileText.StartsWith("hk")) {
regFileText = regFileText.Replace("hklm", "HKEY_LOCAL_MACHINE").Replace("hkcu", "HKEY_CURRENT_USER").Replace("hkcr", @"HKEY_LOCAL_MACHINE\SOFTWARE\Classes");
}
if (regFileText.Contains(']'))
{
if (regFileText.Contains(']')) {
return regFileText.Split("]")[0];
}
else if (regFileText.Contains("\r\n"))
{
} else if (regFileText.Contains("\r\n")) {
return regFileText.Split("\r\n")[0];
}
else if (regFileText.Contains("\n"))
{
} else if (regFileText.Contains("\n")) {
return regFileText.Split("\n")[0];
}
return regFileText;
}
private string[]? SplitReg(string regFileText)
{
if (regFileText.Contains("="))
{
private string[]? SplitReg(string regFileText) {
if (regFileText.Contains("=")) {
return regFileText.Split("=");
}
return null;
}
private string GetName(string regFileText)
{
private string GetName(string regFileText) {
string name = SplitReg(regFileText)[0] ?? "";
return name;
}
private string GetType(string regFileText)
{
private string GetType(string regFileText) {
string type = SplitReg(regFileText)[1] ?? "";
if (type.Length == 0)
{
if (type.Length == 0) {
return "None";
}
else if (type.StartsWith("\""))
{
} else if (type.StartsWith("\"")) {
return "string";
}
else if (type.StartsWith("hex"))
{
} else if (type.StartsWith("hex")) {
return "hex";
}
return "dword";
}
private string GetValue(string regFileText)
{
private string GetValue(string regFileText) {
string value;
string tempValue = SplitReg(regFileText)[1];
string type = GetType(regFileText);
if(type == "string")
{
if (type == "string") {
value = tempValue;
}
else if(type == "dword")
{
} else if (type == "dword") {
value = tempValue.Split("dword:")[1];
}
else
{
} else {
value = "";
}
return value;

View File

@@ -255,6 +255,15 @@ namespace Installizer {
// trigger.StartBoundary = new DateTime[dates.Length];
//}
#region Exports
private static string TaskNameExport(Tasker task) {
return task.TaskName;
}
private static string TaskPathExport(Tasker task) {
return task.TaskPath;
}
//private static string
#endregion
#region Jsoner
public static void ExportJson(string path, Tasker task) {
var tas = Newtonsoft.Json.JsonConvert.SerializeObject(task, Newtonsoft.Json.Formatting.Indented);