我有一个Visual C控制台应用程序(在VC++ 2008EE中创建),并且需要向其中添加GUI。
一种想法是将控制台应用程序作为子进程调用,并使用stdin和stdout与之通信。我尝试使用Python子进程模块来执行此操作-但它死锁了(可能是因为我的控制台应用程序正在连续运行)。从http://www.python.org/dev/peps/pep-3145/可以理解,现在无法将持续运行的控制台应用程序与python子进程模块集成在一起。
另一个想法(可能更加棘手)是向该控制台应用程序项目中添加一个表单。但是,当我尝试执行此操作时,VS不管用什么意思都可以通过“公共(public)语言运行时支持”将项目转换为一个项目,将表单广告,用于表单的cpp文件-不再编译:
Command line error D8016 : '/MTd' and '/clr' command-line options are incompatible
error BK1506 : cannot open file '.\Debug\Form_TEST.sbr': No such file or directory
不知道这是什么意思。我从未接触过C++,但是一段时间以来我都使用过C和Python。
你会推荐什么?
最佳答案
如果您拥有控制台应用程序的代码,请不要试图使用输入和输出流与之交谈。将控制台应用程序的逻辑提取到一个库中,然后从您选择的GUI中调用该库-C#的Windows.Forms,Python GTK,普通的GTK。
关于c++ - C++或Python(也许还有其他方法)为C中的控制台应用程序创建GUI,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3109565/