Utils/CliWrapUtils.cs

(开头部分) 5KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using AppManager.Config;
using AppManager.Pojo;
using CliWrap;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Windows.Forms;

namespace AppManager.Utils {
    internal static class CliWrapUtils {
        /// <summary>
        /// 运行项目
        /// </summary>
        /// <param name="projectSection"></param>
        /// <returns></returns>
        public static void AppStart(AppSections.AppSection projectSection) {
            // 生成一个TabPage
            TabPage tabPage = Configs.mainForm.AppRunTabControl.TabPages[projectSection.Section + Configs.ControlNameTabpage];
            if (null == tabPage) {
                tabPage = projectSection.CreateAppRunTabPage();
                tabPage.Add2TabControl(Configs.mainForm.AppRunTabControl);
                Configs.mainForm.AppRunTabControl.SelectedTab = tabPage;
            }
            // 获取CliWrap执行的文件,bat类型,直接执行bat文件,jar执行对应生成的start.bat文件
            string cliPath;
            switch (projectSection.Type) {
                case Configs.AppTypeBat:
                case Configs.AppTypeExe:
                    cliPath = projectSection.App;
                    break;
                case Configs.AppTypeJava:
                    cliPath = FileUtils.GetBatFilePath(projectSection.Title, Configs.BatFileTypeStart);
                    break;
                default:
                    cliPath = projectSection.App;
                    break;
            }
            RichTextBox richTextBox = (RichTextBox)tabPage.Controls[projectSection.Section + Configs.ControlNameRichtextbox];
            if (File.Exists(cliPath)) {
                ExecuteApp(cliPath, projectSection.Env, richTextBox);
            } else {
                richTextBox.AppendText($"文件不存在:{cliPath}{Environment.NewLine}");
            }
        }

        public static void AppStop(AppSections.AppSection appSection) {
            TabPage tabPage = Configs.mainForm.AppRunTabControl.TabPages[appSection.Section + Configs.ControlNameTabpage];
            if (null == tabPage) {
                tabPage = appSection.CreateAppRunTabPage();
                tabPage.Add2TabControl(Configs.mainForm.AppRunTabControl);
                Configs.mainForm.AppRunTabControl.SelectedTab = tabPage;
            }

            string stopPath = appSection.Type switch {
                Configs.AppTypeBat => appSection.StopApp,
                Configs.AppTypeJava => FileUtils.GetBatFilePath(appSection.Title, Configs.BatFileTypeStop),
                _ => string.Empty
            };
后面还有 71 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。