[Dashboard] 交互式控制台调试界面
Dynesshely opened this issue · comments
醉月酿星河 commented
醉月酿星河 commented
具体需求:
在仪表盘需要的时候, 弹出一个传统的控制台窗口来与使用者交互 (这里主要考虑方便开发者调试)
目前的思路是, 通过重定向 Shell 的输入输出流来读写控制台输入输出, 这个操作在某一个线程中进行以免阻塞 UI
同时, 先一步处理 Shell 的输入, 如果内嵌命令包含用户输入则由仪表盘执行, 否则交由 Shell 执行
醉月酿星河 commented
具体思路:
- 启动外部控制台程序
- 通过启动参数告知控制台程序命名管道的名称
- 开启命名管道服务器并等待该控制台程序连接
- 通过命名管道得到用户输入
醉月酿星河 commented
原来的写废了, 但摸索出了更好的设计思路
现在在 Crequency/Common.ExternalConsole 重做
醉月酿星河 commented
基本实现了基础的库, 现在尝试在 KitX 中调用
但是现在遇到了一个问题
即: Common.ExternalConsole.Console 输出类型为控制台项目, 在 Windows 上将生成 .exe 文件, 但当我将 Crequency/Common.ExternalConsole 发布到 NuGet 并在其它项目中引用时, Common.ExternalConsole.Console 生成类型却是 .dll 文件