Matlab不会运行我的C++。执行档 我有C++程序,它运行得很好,但是它有不同的步骤。它首先打开一个文件,然后根据从文件中获取的数据进行一些计算。现在我试着用matlab来运行它。我试过mex,但它太复杂了,因为我有VS 2010 Express和MATLAB 2007b。所以mex永远找不到我的c编译器 我现在正试图从C++程序的可执行文件中直接运行它。下面是我如何尝试的: system('C:\path\file.exe')

Matlab不会运行我的C++。执行档 我有C++程序,它运行得很好,但是它有不同的步骤。它首先打开一个文件,然后根据从文件中获取的数据进行一些计算。现在我试着用matlab来运行它。我试过mex,但它太复杂了,因为我有VS 2010 Express和MATLAB 2007b。所以mex永远找不到我的c编译器 我现在正试图从C++程序的可执行文件中直接运行它。下面是我如何尝试的: system('C:\path\file.exe'),c++,visual-studio-2010,matlab,cmd,C++,Visual Studio 2010,Matlab,Cmd,它将运行,但命令窗口冻结,我必须关闭Matlab每次回到正轨。然后我试着双击它自己的可执行文件。它闪烁,但我可以看到它从我的文件中输出了一些东西“文件无法上传”,如果找不到文件,它是由我的程序的一部分生成的 然后我意识到可能是因为这个原因导致它无法运行和崩溃。 因此,我编写了一个示例代码,在系统命令打开.exe文件之前先打开该文件。我做过类似于fopen('fname','r')的事情,但没有任何效果。请注意,我试图打开的这个文件是一个.COF文件 我尝试使用调试和发布模式运行.exe文件,但什

它将运行,但命令窗口冻结,我必须关闭Matlab每次回到正轨。然后我试着双击它自己的可执行文件。它闪烁,但我可以看到它从我的文件中输出了一些东西
“文件无法上传”
,如果找不到文件,它是由我的程序的一部分生成的

然后我意识到可能是因为这个原因导致它无法运行和崩溃。 因此,我编写了一个示例代码,在系统命令打开
.exe
文件之前先打开该文件。我做过类似于fopen('fname','r')的事情,但没有任何效果。请注意,我试图打开的这个文件是一个
.COF
文件

我尝试使用调试和发布模式运行
.exe
文件,但什么也没发生。它没有给出错误,这意味着它看到了
.exe
文件,但命令行没有出现,matland命令窗口冻结

在运行之后,它应该在命令行提示用户,然后获取输入参数并输出一些东西


请帮助……

我猜您的.COF文件的路径与二进制文件可访问的路径不同。如果可以重新编译,请尝试使用绝对路径名,并首先在不使用MATLAB的情况下对其进行测试


有更彻底的方法来解决这个问题,比如将文件名作为命令行参数传递给二进制文件,或者在使用
系统时读取“当前目录”的规则,但也许您会对快速解决方案感到满意。

绝对路径是什么意思?从现在起,我想用任何可能的方法。我还将我的.COF文件复制到我正在运行的同一个file.m目录中,但没有帮助我。您所说的绝对路径是什么意思?到目前为止,我会尝试任何可能的方式让它运行,我还将.COF文件复制到了我正在运行的同一个file.m目录中,并且没有帮助我保存您的输入。可执行文件现在可以工作了。但是Matlab仍然可以运行它。window命令保持运行模式,不会出现任何其他人想要评论的内容。因为当我运行系统('C:\path\path\.exe')时,其他任何人都想发表评论。因为当我在命令窗口中运行系统('C:\path\path\.exe')时,它只是停留在调试模式,什么也不会出现。我每次都会重新启动matlab。.exe文件和.COF位于同一目录中