无法从excel dll中写入文件

时间:2012-11-16 15:01:26

标签: c++ visual-studio-2010 excel dll

我开发了一个Excel dll,其代码如下:

 FILE *outf
 if((outf = fopen("filename.txt","w+"))!=NULL)
 {
   fprintf(outf,"hello");
  } 
 fclose.(outf);

本质上我试图从dll中写入一个文件,程序正确执行没有任何错误,但我没有看到任何带有“filename.txt”的文件。它没有被创建,我在Windows开发的c ++ visual studio 2010中。

1 个答案:

答案 0 :(得分:0)

它在Excel DLL(或XLL)所在的目录中创建了该文件,因为这是DLL上下文的当前工作目录。除非您移动了DLL,否则这是项目目录下的Debug目录。

下面的Windows API函数可用于检索DLL的完整路径。

DWORD WINAPI GetModuleFileName( HMODULE hModule, LPTSTR  lpFilename, DWORD  nSize  );