diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 1dcbb2b..1d8348d 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -1656,6 +1656,9 @@
     int		shortname = FALSE;	/* use 8.3 file name */
     struct stat	st_old;		/* mch_stat() of existing viminfo file */
 #endif
+#ifdef WIN3264
+    long	perm = -1;
+#endif
 
     if (no_viminfo())
 	return;
@@ -1713,6 +1716,10 @@
 	    goto end;
 	}
 #endif
+#ifdef WIN3264
+	/* Get the file attributes of the existing viminfo file. */
+	perm = mch_getperm(fname);
+#endif
 
 	/*
 	 * Make tempname.
@@ -1803,15 +1810,16 @@
 	    int	fd;
 
 	    /* Use mch_open() to be able to use O_NOFOLLOW and set file
-	     * protection same as original file, but strip s-bit. */
+	     * protection:
+	     * Unix: same as original file, but strip s-bit.
+	     * Others: r&w for user only. */
 #ifdef UNIX
 	    fd = mch_open((char *)tempname,
 		    O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW,
 				       (int)((st_old.st_mode & 0777) | 0600));
 #else
 	    fd = mch_open((char *)tempname,
-		    O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW,
-				       0600);	/* r&w for user only */
+		    O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW, 0600);
 #endif
 	    if (fd < 0)
 		fp_out = NULL;
@@ -1866,12 +1874,21 @@
     if (fp_in != NULL)
     {
 	fclose(fp_in);
+
 	/*
-	 * In case of an error, don't overwrite the original viminfo file.
+	 * In case of an error keep the original viminfo file.
+	 * Otherwise rename the newly written file.
 	 */
 	if (viminfo_errcnt || vim_rename(tempname, fname) == -1)
 	    mch_remove(tempname);
+
+#ifdef WIN3264
+	/* If the viminfo file was hidden then also hide the new file. */
+	if (perm > 0 && (perm & FILE_ATTRIBUTE_HIDDEN))
+	    mch_hide(fname);
+#endif
     }
+
 end:
     vim_free(fname);
     vim_free(tempname);
