如何使用 Windows 窗体应用程序按钮在 Visual Studio 2010 中运行控制台文件? [关闭]

Posted

技术标签:

【中文标题】如何使用 Windows 窗体应用程序按钮在 Visual Studio 2010 中运行控制台文件? [关闭]【英文标题】:How to use windows form application button to run console files in visual studio 2010? [closed] 【发布时间】:2014-06-03 11:43:46 【问题描述】:

在我的“手势识别”项目中,我使用 Visual Studio 2010 Visual C++ 并打开 CV,有许多 Win32 控制台应用程序 c++ 文件,例如用于训练、测试、创建数据集、用于 HMM 训练等。用于运行任何文件我需要包含该文件并排除所有其他文件。之前我是在控制台应用程序上制作的,但现在我想将 Windows 窗体应用程序添加到这个项目中。当我添加到这个项目 Windows 窗体 Visual C++ 并创建一个按钮时,它会给出错误,尽管我已经更改了公共语言运行时支持的属性。有什么方法可以执行这些不同的 .cpp 文件,在表单应用程序上创建按钮,因为那是使用 c#。

`private: System::Void Krishna_Load(System::Object^ sender, System::EventArgs^ e) 私有:System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)

         
;

`

【问题讨论】:

使用Process 类运行外部程序。这很可能是实施您的程序的糟糕方式。 您的措辞令人困惑。您是说您已经在 C++/CLI 中实现了一个 GUI(如果没有,是什么语言?)和一个基于控制台的 C++ 后端,并且您希望能够从 GUI 运行后端?如果是这样,直接调用 C++ 代码应该不难。只是谷歌短语,例如“将非托管 C++ 与托管代码混合”。对于有人发布整个教程作为答案的问题来说,这个问题太宽泛了。或者,您可以考虑使用 C++(非托管)GUI 框架,这样您就不需要混合多种语言。 【参考方案1】:

如果这个问题是针对 Visual Basic 开发人员的,那么:

单击该按钮,Visual Studio 将为您生成一个代码,当用户单击应用程序中的相同按钮时,该代码将运行。

考虑以下示例:

Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Process.Start("C:\Users\MyName\Documents\MyApp.exe")
    End Sub
End Class

在上面提到的代码中,除第三行之外的所有内容都是在我单击名为“Button1”的按钮时由 Visual Studio 自动生成的

在 From1 中单击 Button1 时,它将启动文件夹 C:\Users\MyName\Documents\ 内的应用程序 MyApp.exe

此代码应该可以在您的项目中使用,因为它对我有用。使用此代码,您还可以运行其他文件,例如 .mp3 和 .mp4 等。

【讨论】:

-1,您认为 Visual Basic 的依据是什么?这个问题暗示(以一种措辞不好的方式)C++/CLI。 如果有人觉得这个答案“没用”,请在此处提及为什么?这将使我有机会重新构建我的答案。谢谢! 我确实提到了原因...(但请参阅我对上述评论的更正)。 他提到了visual studio,Windows Form Applications 是用Visual Basic 语言创建的。当我开始学习 Visual Basic 时,我也遇到了同样的问题。所以,我认为,很明显,问它的人没有将它标记为“Visual Basic 2012 或 2010”,但它来自 Visual Basic 不,你没有正确理解。 Windows 窗体是一个 .NET API,并不特定于 Visual Basic(就像 Visual Studio 是一个通用 IDE,并不特定于 Visual Basic)。仅仅因为您碰巧在 Visual Basic 中使用它并不意味着每个人都使用它。 OP说“windows form application c++”,暗示他正在使用C++/CLI。

以上是关于如何使用 Windows 窗体应用程序按钮在 Visual Studio 2010 中运行控制台文件? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Windows 窗体中分离 UI 线程和进程线程

如何正确暂停/延迟 Windows 窗体应用程序

如何将数据绑定与 Windows 窗体单选按钮一起使用?

如何在windows窗体应用程序c#中中止当前任务

如何在 Windows 窗体中取消选择按钮或重新定义返回键的功能?

在 C# 中使用不同的父控件对 Windows 窗体单选按钮进行分组