Crequency / KitX

An all-purpose toolbox app that connect everything.

Home Page:https://kitx.apps.crequency.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Dashboard] 交互式控制台调试界面

Dynesshely opened this issue · comments

具体需求:
在仪表盘需要的时候, 弹出一个传统的控制台窗口来与使用者交互 (这里主要考虑方便开发者调试)
目前的思路是, 通过重定向 Shell 的输入输出流来读写控制台输入输出, 这个操作在某一个线程中进行以免阻塞 UI
同时, 先一步处理 Shell 的输入, 如果内嵌命令包含用户输入则由仪表盘执行, 否则交由 Shell 执行

具体思路:

  1. 启动外部控制台程序
  2. 通过启动参数告知控制台程序命名管道的名称
  3. 开启命名管道服务器并等待该控制台程序连接
  4. 通过命名管道得到用户输入

原来的写废了, 但摸索出了更好的设计思路
现在在 Crequency/Common.ExternalConsole 重做

基本实现了基础的库, 现在尝试在 KitX 中调用
但是现在遇到了一个问题
即: Common.ExternalConsole.Console 输出类型为控制台项目, 在 Windows 上将生成 .exe 文件, 但当我将 Crequency/Common.ExternalConsole 发布到 NuGet 并在其它项目中引用时, Common.ExternalConsole.Console 生成类型却是 .dll 文件