C# “编写我自己的自定义命令行”;包装纸;窗户

C# “编写我自己的自定义命令行”;包装纸;窗户,c#,java,windows,user-interface,command-prompt,C#,Java,Windows,User Interface,Command Prompt,我从来都不是windows命令行的粉丝。我曾经尝试过powercmd之类的工具,也喜欢它们,但大多数都不是免费分发的,我不喜欢为我认为可以自己编写的东西付费。我想编写类似于powercmd的自己的命令行包装器,以允许以下属性: 自定义字体和颜色 窗口不透明度 在一个面板中同时打开多个窗口(可能类似于选项卡式浏览) 调整窗口大小的能力 我现在正在联系你们,以帮助我决定是否应该在VisualStudio中使用C#来尝试这一点,还是应该在Java中使用Swing来实现这一点。我对两者都很满意。有人

我从来都不是windows命令行的粉丝。我曾经尝试过powercmd之类的工具,也喜欢它们,但大多数都不是免费分发的,我不喜欢为我认为可以自己编写的东西付费。我想编写类似于powercmd的自己的命令行包装器,以允许以下属性:

  • 自定义字体和颜色
  • 窗口不透明度
  • 在一个面板中同时打开多个窗口(可能类似于选项卡式浏览)
  • 调整窗口大小的能力
我现在正在联系你们,以帮助我决定是否应该在VisualStudio中使用C#来尝试这一点,还是应该在Java中使用Swing来实现这一点。我对两者都很满意。有人做过这样的命令行包装器吗?如果是的话,你用了什么语言?你的经历是什么?谢谢你的反馈


格兰特-

如果您想使用windows命令行,我建议您使用C#。Java强制实现的平台独立性会让您在将命令传递给底层操作系统的过程中付出太多的努力。

C#在这类项目中比Java有几个好处,其中最重要的一点是与Windows更好的集成,Windows可能是您开发此项目的唯一平台。Java Swing库在windows机器上的外观并不像C#forms那样精巧,而且由于能够使用WPF,C#显然是我的赢家。

我不会为此使用Java和Swing。C#将使您能够直接与.Net framework通信,并使您能够构建更强大的命令行工具。让Java访问某些Windows系统调用将是一件麻烦事。

-可调整大小、不透明度、选项卡、可修改字体


它是用C++编写的,在引擎盖下封装CMD.EXE(或者说是哪个命令shell使用它),如果你真的对用托管语言开发自己的shell感兴趣,那么这可能是两个打击。

自从你问起,我在C语言中写了一个——<代码>进程< /Cord>类太有用了。这里最主要的是I/O重定向。虽然我从未完全自己管理它,但您需要这样做,以便子流程输出不会出现在另一个控制台窗口中。您还可以终止程序,查找现有程序,等等

此外,C#的控制台操作非常方便


虽然我不是Java程序员,但考虑到Java是独立于平台的,我可以想象这两个重要功能都很难使用。

只是想让大家知道,我最终用C#编写了一个命令行包装器。结果真的很好。我还有一些小东西要添加,然后我将提供源代码以及下载.exe的位置。我发布了一段视频,以防有人想提供反馈或想法。谢谢你的帮助


我不知道为什么我以前从未见过Console2。看起来很有希望。谢谢你的提示。谢谢你的信息。我想这就是我要走的路线。你们是对的,我认为C#是两个人中比较好的一个,因为我正在努力。在此期间,我将使用控制台2(张贴在上面)。再次感谢大家的反馈。没问题;)。我喜欢你正在做的事情-如果结果不错(:D),如果可以的话,发布一个链接或其他东西。这里只是一个很好的插件-:)@Oscar:他们可以使用C#form作为保存控制台的表单,它可以处理选项卡等。看看Gnome终端。