¿Modos de archivo de nodo en Windows?

En Nodo , los modos de archivo (por ejemplo, para fs.open ) se definen en los términos del mundo POSIX (un valor octal de tres dígitos). Sin embargo, eso no se corresponde con la forma en que Windows hace las cosas. Windows no tiene un acoplamiento tan estrecho entre los permisos de usuario y el sistema de archivos. La función OpenFile Windows ni siquiera tiene parámetros relacionados. Pero por lo que he recogido hasta ahora, tampoco son ignorados por completo.

¿Hay alguna explicación sobre cómo usar los modos de archivo Node en Windows?

Echa un vistazo a la fuente . Parece que lo único que están haciendo es configurar FILE_ATTRIBUTE_READONLY en función de si el archivo se puede escribir o no.

  if (flags & _O_CREAT) { if (!((req->mode & ~current_umask) & _S_IWRITE)) { attributes |= FILE_ATTRIBUTE_READONLY; } } 

Las notas sobre fs.chmod también son interesantes.

  /* Todo: st_mode should probably always be 0666 for everyone. We might also * want to report 0777 if the file is a .exe or a directory. * * Currently it's based on whether the 'readonly' attribute is set, which * makes little sense because the semantics are so different: the 'read-only' * flag is just a way for a user to protect against accidental deleteion, and * serves no security purpose. Windows uses ACLs for that. * * Also people now use uv_fs_chmod() to take away the writable bit for good * reasons. Windows however just makes the file read-only, which makes it * impossible to delete the file afterwards, since read-only files can't be * deleted. * * IOW it's all just a clusterfuck and we should think of something that * makes slighty more sense. * * And uv_fs_chmod should probably just fail on windows or be a total no-op. * There's nothing sensible it can do anyway. */