无法从C ++ DLL打开文件

时间:2010-03-02 06:21:56

标签: c++

我有一个用C#编写GUI的应用程序,逻辑用C ++ DLL编写。 DLL应该打开一个文件来从中读取数据。我有与DLL相同的文件夹中的data.txt文件。我打电话的时候 fopen("data.txt","r") 返回的值为NULL。可能是什么问题呢?请帮助我。

谢谢, 勒凯什。

3 个答案:

答案 0 :(得分:8)

dll文件的位置无关紧要。 open的路径必须包含完整路径,否则文件将打开到应用程序的当前工作目录。

答案 1 :(得分:1)

如果使用相对路径,则data.txt文件的位置必须相对于加载DLL的进程的位置。

答案 2 :(得分:0)

不要使用fopen,请尝试OpenFile。它可能也会失败,但是你可以调用GetLastError()并知道原因。