日期:2014-05-18  浏览次数:20399 次

ASP调用dll
在VS2008中建立了一个网站,想调用一个dll,这个dll的功能是生成一个文本文档。代码如下:
extern "C" __declspec(dllexport) void create () 
{
FILE *fp;
  int dat[1][100];
  int h;

  for (int i=0;i<100;i++)
  {
dat[0][i]=i;
  }
   

  remove("data.dat");
fp=fopen("data.dat","w");
   
//num=eneend-enestart+1;
for (h=0;h<100;h++)
{
fprintf(fp,"%16d\n",dat[0][h]);
}
/* }*/
fclose(fp);
}
使用以下语句引用了这个dll:
[DllImport(@"dll路径\ddf.dll ", EntryPoint = "create")]
  public static extern void create();
然后启动调试,一个button点击过后,create()执行成功,没有异常,但没有data.dat文本生成。
注:为了防止路径引用的错误,我又在这个dll中写了另外一个函数,简单地将一个数字加了1,这个功能可以成功执行。说明路径引用没有问题,为什么没有文本生成呢??

谢谢

------解决方案--------------------
你的意思是该DLL调用时成功的,只是文件没有生成?
你确信这个DLL里用的路径是相对路径,而且跟你的文件目录一致?
并且该目录权限放开了,并且该DLL拥有必须得权限?