2011-04-21 80 views
0

我在dll代码中打开文件。我正在使用fopen。由fopen返回的指针为NULL。我究竟做错了什么?在dll内打开文件时出错

pFile = fopen("C:\\Users\\bruce\\Desktop\\log.txt","w"); 

我用调试器运行代码。该文件被创建,但通过fopen返回的指针为NULL会抛出当我使用fopen()失败fprintf

+1

你应该发布你正在使用的代码。有很多事情你可能会做错,例如文件真的存在吗?你以什么模式打开它?你的进程运行的用户是否有足够的权限来打开它? – Pablo 2011-04-21 09:15:18

+1

你有任何的代码? :)你正在创建/打开一个现有的文件?您有权限访问该文件吗?... – forsvarir 2011-04-21 09:15:19

+1

流程的当前目录是您期望的吗?每个进程只有*一个*当前目录。什么是'errno'? – 2011-04-21 09:17:23

回答

1

后异常,错误结果存储在errno全局变量(一定要#include <errno.h>)。 strerror()函数可以将errno数字转换为可读的字符串。