我有个服务程序,需要读网络映射盘中的某个文件(比如z:\a.txt),为什么在服务程序中无法读取?
但是读取本地文件都没问题.
HANDLE handle=CreateFile("z:\\a.txt",
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
if(handle==INVALID_HANDLE_VALUE)
{
MessageBox(0,"fail","fail",0);
}
else
{
CloseHandle(handle);
}

解决方案 »

  1.   

    HANDLE hFile = ::CreateFile(szTempName, OPEN_ALWAYS|CREATE_NEW, FILE_SHARE_READ|FILE_SHARE_DELETE,
       NULL, CREATE_ALWAYS, 0, NULL);
    用用我上面的看行不,如果不行会不会是你建映射的问题啊!
      

  2.   

    用你的create还是不行
    映射建的没问题,我单独建一个程序都可以访问,一放到服务里就不行了
    是不是我们权限问题?
      

  3.   

    我是在用net use建立的映射盘,但是我在其他应用程序里打开这个文件都没问题
    应该不是映射盘的问题
      

  4.   

    如果其它应用程序都可以打开的话,那试试用CFILE或其它方法读文件可行不?!
      

  5.   

    我用CFILE 和fopen都试过了,单独程序都可以,一到服务里就不行了
    xuanzg(小钢娃),你说的"添加网络服务为你的服务的依赖服务"是什么意思,是要再写一个服务吗?