Visual studio 2008 奇怪的是,fopen和fopen_s返回null 我的编译环境:编译器是微软Visual Studio C++ 2008。

Visual studio 2008 奇怪的是,fopen和fopen_s返回null 我的编译环境:编译器是微软Visual Studio C++ 2008。,visual-studio-2008,visual-c++,fopen,Visual Studio 2008,Visual C++,Fopen,好的,顺便说一下,我有两个文件,比如a.exe和b.exe。它们都是Win32控制台应用程序。我想做的是,当我打开b.exe并按下按钮时,它将执行a.exe 但奇怪的是,当我这么做的时候,a.exe并没有按它应该的方式运行。它遇到一个错误,原因是:当a.exe尝试打开x.dat文件时,fopen返回空值。我试着用fopen_s来改变fopen,但也没有成功 奇怪的是:当我双击一个.exe执行它时,它运行得非常好。但是,当我用b.exe调用a.exe时,fopen和fopen_的函数并没有正常工作

好的,顺便说一下,我有两个文件,比如a.exe和b.exe。它们都是Win32控制台应用程序。我想做的是,当我打开b.exe并按下按钮时,它将执行a.exe

但奇怪的是,当我这么做的时候,a.exe并没有按它应该的方式运行。它遇到一个错误,原因是:当a.exe尝试打开x.dat文件时,fopen返回空值。我试着用fopen_s来改变fopen,但也没有成功

奇怪的是:当我双击一个.exe执行它时,它运行得非常好。但是,当我用b.exe调用a.exe时,fopen和fopen_的函数并没有正常工作。我还尝试用Java文件调用a.exe,结果也是一样的


我能做些什么来解决这个问题吗?

当你运行从b.exe调用的a.exe时,确保你使用的是正确的工作目录,或者你提供给fopen的文件路径有完整的路径。

噢,我的天啊……。正如你所说的。在某些文件中没有指定完整路径,以致fopen找不到文件并返回空值,这真是我的错..天哪,想想我已经调试了好几天这个愚蠢的错误。。。谢谢你的帮助^五^