Search code examples
c#.netvisual-studio-2017windows-10windows-explorer

windows explorer cant see files written by c# app File.WriteAllLines


I am having a strange problem that I am unable to access files written by my c# application. My app basically does :

var file = "C:\\Users\\Public\\Documents\\something.txt";
List<string> content = new List<string> { "one thing", "two things" };
Console.WriteLine(System.IO.File.Exists(file));
System.IO.File.WriteAllLines(file, content);
Console.WriteLine(System.IO.File.Exists(file));

The first time I run the app, the output is

False
True

Yet I cannot see the written file in Windows Explorer (Windows 10). I get no exceptions attempting to write the file. The second time I run the app, the output is :

True
True

According to my application the file is being written however Windows thinks differently. As a sanity check I spun up a second app that opens a dialog using OpenFileDialog. When I run that, I am able to see my written files! Windows explorer still cannot. Attached is a screenshot of windows explorer and my openfiledialog side by side.

If I go to notepad and browse for the file I cannot see it or manually type in the name.

Its been a long week of work, there must be some dumb explanation...? Help! :-)

Screenshot - windows explorer on left, c# app open dialog on right : https://i.sstatic.net/4wiRc.jpg


Solution

  • per @BACON 's suggestion in the comments above I discovered that after disabling the Comodo anti-virus I am able to write and see my files.

    I believe the software is running my app or either only allowing IO from my app in some kind of container. I need to figure out how to grant my apps proper permissions through the anti-virus software, but that was the culprit.