Каталог Temp с использованием виртуализированного пути на некоторых компьютерах

В моем приложении Silverlight я использую обычный файл SaveFileDialog для быстрого пользователя для сохранения некоторого файла.

Проблема в том, что на некоторых компьютерах с Windows 7, если пользователь использует IE в защищенном режиме и пытается сохранить, например, на рабочем столе, путь для сохранения заканчивается следующим образом:

C:\Users\<user>\Appdata\Local\Microsoft\Windows\Temporary Internet Files\Virtualized\C\Users\<user>\Desktop

Кто-нибудь знает, где я могу найти флаг или значение, указывающее, что этот путь будет использоваться вместо обычного в окнах?

Спасибо

Ответ 1

Итак, после небольшого исследования я боюсь, что нет флага или значения, которое указывает на виртуализированный путь...

Я знаю, что это немного русский, но если предположить, что это статический

\ Microsoft\Windows\Temporary Internet Files\Virtualized\

Вы можете сделать что-то подобное, чтобы проверить, указывает ли Path на виртуализированную папку

public static bool IsPathVirtualized(string path)
{
        bool isVirtualized = false;
        string pathToVirtualizedUserFolder = Path.Combine
        (
            Environment.SpecialFolder.LocalApplicationData + 
            @"Microsoft\Windows\Temporary Internet Files\Virtualized\"
        );

        if(path.StartsWith(pathToVirtualizedUserFolder))
        {
            isVirtualized = true;
        }
        return isVirtualized;
}