_open为共享文件返回EINVAL

时间:2016-03-09 08:07:13

标签: c windows

我正在尝试使用_open()函数打开共享文件。它返回-1而errno是22(EINVAL)。我可以在文件资源管理器中打开共享文件。程序和共享文件位于Windows机器中。

#include<stddef.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <io.h>
#include <stdio.h>

int main( void )
{
   int fh1;
   char fname[50] = "\\\\192.168.1.115\\data\\RELEASE-PC.err";

   fh1 = _open( fname, _O_RDONLY|_O_BINARY, 384 );
   if( fh1 == -1 )
      printf( "Open failed on input file - %d",errno ); //EINVAL
   else
   {
      printf( "Open succeeded on input file\n" );
      _close( fh1 );
   }
}

知道它失败的原因吗?这是许可问题吗?

0 个答案:

没有答案