Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么同一台计算机上的两个控制台应用程序会从Directory.Exists(sameDirectory)返回不同的结果?_C#_Windows 7 - Fatal编程技术网

C# 为什么同一台计算机上的两个控制台应用程序会从Directory.Exists(sameDirectory)返回不同的结果?

C# 为什么同一台计算机上的两个控制台应用程序会从Directory.Exists(sameDirectory)返回不同的结果?,c#,windows-7,C#,Windows 7,我有两个.net控制台应用程序,我需要在同一台机器上调试并停止这两个应用程序的第一行 然后我将以下手表添加到两个Visual Studio中:Directory.Exists(@“C:\Program Files\MyDirectory”) 一个应用程序返回true而另一个应用程序返回false的可能原因是什么 返回true的应用程序错误,我可以在Windows资源管理器中进行验证,并创建和删除目录 我在错误返回true的应用程序上尝试了以下操作: 已排除app.manifest文件,重新生成并

我有两个.net控制台应用程序,我需要在同一台机器上调试并停止这两个应用程序的第一行

然后我将以下手表添加到两个Visual Studio中:
Directory.Exists(@“C:\Program Files\MyDirectory”)

一个应用程序返回
true
而另一个应用程序返回
false
的可能原因是什么

返回
true
的应用程序错误,我可以在Windows资源管理器中进行验证,并创建和删除目录

我在错误返回
true
的应用程序上尝试了以下操作:

  • 已排除app.manifest文件,重新生成并再次调试

  • 已从app.config文件中删除以下内容:


  • 
    
  • 这两个Visual Studio都不是以管理员身份运行的,它们都是在任务管理器中,通过
    System.Environment.UserName
    运行的,我确信它们都是以同一个用户的身份运行的
  • 还有什么可能导致此行为?

    这是由Windows Vista中首次引入的引起的,这意味着当应用程序满足条件时,它将看到对受保护位置的读/写重定向到路径下的文件夹
    %UserProfile%\AppData\Local\VirtualStore
    (也可以通过
    %localappdata%\VirtualStore
    访问。这意味着两个不同的应用程序可以获得
    程序文件
    文件夹内容的不同视图,例如:

    C:\Users[您的\u用户名]\AppData\Local\VirtualStore\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE

    C:\ProgramFiles(x86)\microsoft visual studio 14.0\common7\ide


    以我的
    VirtualStore
    文件夹层次结构中存在的文件夹为例。

    您是
    Console.WriteLine
    结果还是用鼠标检查值-(h)结束?@cramopy,我F10了一次,当调试器在第一行暂停时,我将手表添加到两个Visual Studio。它可以简单到不同的字符串,例如额外的空间。@MartinLottering,在
    %localappdata%\VirtualStore
    下是否有相应的文件夹?我知道你说过你已经把所有东西都剥去了,并重新整理了检查两个控制台应用程序是否以相同的身份运行,但这是我在这里能想到的唯一一件事(
    %localappdata%
    映射到
    C:\Users\[USERNAME]\AppData\Local
    )@MartinLottering,技术不是很棒吗!;-)VirtualStore之前曾发现过我一两次,但奇怪的是,Visual Studio的两个实例在是否看到它的问题上不一致。也许有一个是以管理员身份运行的吗?也许值得查看VirtualStore中文件夹的创建日期,看看这是否能给您提供任何提示,说明为什么这两个实例会被删除不一致地保存,例如,查看创建日期后,您认为其中一个VS实例在之前打开,另一个在之后打开=)
    <system.web>
      <membership defaultProvider="ClientAuthenticationMembershipProvider">
        <providers>
          <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri=""/>
        </providers>
      </membership>
      <roleManager defaultProvider="ClientRoleProvider" enabled="true">
        <providers>
          <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400"/>
        </providers>
      </roleManager>
    </system.web>