示例#1
0
        public DumpParser(string file)
        {
            Tuple <StorageManager <Civilian>, StorageManager <CivilianVeh>, StorageManager <Bolo>, StorageManager <EmergencyCall>, StorageManager <Officer>, Permissions> parsedInfo;
            var database = new Database(file, false);

            try
            {
                parsedInfo = database.Read();
                Result     = DumpResult.Successful;
            }
            catch (InvalidCastException)
            {
                MessageBox.Show("DumpParser had a problem parsing the given file!", "DumpUnloader",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                Result = DumpResult.Invalid;
                return;
            }
            catch (IOException)
            {
                MessageBox.Show($"DumpParser couldn't file the file {file}", "DumpUnloader", MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                Result = DumpResult.FileNotFound;
                return;
            }

            DumpInformation = new Dump
            {
                Civilians      = parsedInfo?.Item1,
                Vehicles       = parsedInfo?.Item2,
                Bolos          = parsedInfo?.Item3,
                EmergencyCalls = parsedInfo?.Item4,
                Officers       = parsedInfo?.Item5,
                Permissions    = parsedInfo?.Item6
            };
        }
示例#2
0
        public static DumpResult Dump(FileInfo SourceFile)
        {
            DumpResult returnValue = new DumpResult()
            {
                sourcefile = SourceFile
            };

            if (SourceFile.Exists)
            {
                if (SourceFile.Extension.ToLower() == ".apk")
                {
                    // Run external command
                    string[] lines                   = Command.Run(@"dump badging ""{0}""", SourceFile.FullName).Replace("\r", "").Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
                    string[] packageLine             = GetLines(lines, "package:");
                    string[] applicationLine         = GetLines(lines, "application:");
                    string[] launchable_activityLine = GetLines(lines, "launchable activity");
                    string[] sdkVersionLine          = GetLines(lines, "sdkVersion:");
                    string[] targetSdkVersionLine    = GetLines(lines, "targetSdkVersion:");
                    string[] native_codeLine         = GetLines(lines, "native-code:");
                    string[] uses_permissionLine     = GetLines(lines, "uses-permission:");
                    string[] uses_featureLine        = GetLines(lines, "uses-feature:");
                    string[] supports_screensLine    = GetLines(lines, "supports-screens: ");

                    returnValue.package.name              = SearchValue(packageLine, "name=");
                    returnValue.package.versionCode       = SearchValue(packageLine, "versionCode=");
                    returnValue.package.versionName       = SearchValue(packageLine, "versionName=");
                    returnValue.application.label         = SearchValue(applicationLine, "label=");
                    returnValue.application.icon          = SearchValue(applicationLine, "icon=");
                    returnValue.launchable_activity.name  = SearchValue(launchable_activityLine, "name=");
                    returnValue.launchable_activity.label = SearchValue(launchable_activityLine, "label=");
                    returnValue.launchable_activity.icon  = SearchValue(launchable_activityLine, "icon=");
                    returnValue.sdkVersion       = SearchValue(sdkVersionLine, "sdkVersion:");
                    returnValue.targetSdkVersion = SearchValue(targetSdkVersionLine, "targetSdkVersion:");
                    returnValue.native_code      = SearchValue(native_codeLine, "native-code: ");
                    returnValue.uses_permission  = SearchValues(uses_permissionLine, "uses-permission:");
                    returnValue.uses_feature     = SearchValues(uses_featureLine, "uses-feature:");
                    returnValue.supports_screens = Get_Supports_screens(supports_screensLine).ToArray();
                    returnValue.locales          = Get_Locales(lines).ToArray();
                    returnValue.densities        = Get_Densities(lines).ToArray();
                }
            }

            return(returnValue);
        }
示例#3
0
文件: Aapt.cs 项目: jorik041/APK-Edit
        public static DumpResult Dump(FileInfo SourceFile)
        {
            DumpResult returnValue = new DumpResult() { sourcefile = SourceFile };

            if (SourceFile.Exists)
                if (SourceFile.Extension.ToLower() == ".apk")
                {
                    // Run external command
                    string[] lines                   = Command.Run(@"dump badging ""{0}""", SourceFile.FullName).Replace("\r", "").Split(new char[] { '\n' }, StringSplitOptions.RemoveEmptyEntries);
                    string[] packageLine             = GetLines(lines, "package:");
                    string[] applicationLine         = GetLines(lines, "application:");
                    string[] launchable_activityLine = GetLines(lines, "launchable activity");
                    string[] sdkVersionLine          = GetLines(lines, "sdkVersion:");
                    string[] targetSdkVersionLine    = GetLines(lines, "targetSdkVersion:");
                    string[] native_codeLine         = GetLines(lines, "native-code:");
                    string[] uses_permissionLine     = GetLines(lines, "uses-permission:");
                    string[] uses_featureLine        = GetLines(lines, "uses-feature:");
                    string[] supports_screensLine    = GetLines(lines, "supports-screens: ");

                    returnValue.package.name              = SearchValue(packageLine, "name=");
                    returnValue.package.versionCode       = SearchValue(packageLine, "versionCode=");
                    returnValue.package.versionName       = SearchValue(packageLine, "versionName=");
                    returnValue.application.label         = SearchValue(applicationLine, "label=");
                    returnValue.application.icon          = SearchValue(applicationLine, "icon=");
                    returnValue.launchable_activity.name  = SearchValue(launchable_activityLine, "name=");
                    returnValue.launchable_activity.label = SearchValue(launchable_activityLine, "label=");
                    returnValue.launchable_activity.icon  = SearchValue(launchable_activityLine, "icon=");
                    returnValue.sdkVersion                = SearchValue(sdkVersionLine, "sdkVersion:");
                    returnValue.targetSdkVersion          = SearchValue(targetSdkVersionLine, "targetSdkVersion:");
                    returnValue.native_code               = SearchValue(native_codeLine, "native-code: ");
                    returnValue.uses_permission           = SearchValues(uses_permissionLine, "uses-permission:");
                    returnValue.uses_feature              = SearchValues(uses_featureLine, "uses-feature:");
                    returnValue.supports_screens          = Get_Supports_screens(supports_screensLine).ToArray();
                    returnValue.locales                   = Get_Locales(lines).ToArray();
                    returnValue.densities                 = Get_Densities(lines).ToArray();
                }

            return returnValue;
        }
        public DumpResult ConvertSingleResult(HtmlNode node)
        {
            DumpResult result = new DumpResult();

            HtmlAttribute srcAttr = null;

            if (Parameters.Type == Parameter.OverviewType.PicDump)
            {
                srcAttr = node.Attributes["data-src"];
            }
            else if (Parameters.Type == Parameter.OverviewType.GifDump)
            {
                srcAttr = node.Attributes["data-gif"];
            }
            else if (Parameters.Type == Parameter.OverviewType.EroDump)
            {
                srcAttr = node.Attributes["src"];
            }

            result.Url = srcAttr?.Value ?? string.Empty;
            result.Url = result.Url.Trim();

            return(result);
        }
示例#5
0
 public DumpViewModel(DumpResult dump)
 {
     Dump = dump;
 }