Pracuję więc nad prostym programem .NET do pracy i trafiam na trochę dziwną blokadę, którą mogę ". t wymyślić. Aplikacja korzysta z pliku konfiguracyjnego, który dodaje aplikacje do rozwijanego menu. Jednak przed dodaniem do menu robi plik system.io.file.exists, aby sprawdzić, czy plik istnieje, przynajmniej w momencie utworzenia menu.System.IO.File.Exists (@ "C: Windows System32 SnippingTool.exe") zwraca fałsz
Jednak System.IO.File.Exists (@ "C: \ Windows \ System32 \ SnippingTool.exe") zwraca wartość false, ale plik wykonywalny istnieje. Podobnie stikynot.exe zwraca także wartość false. Inne pliki w katalogu system32 zwracają wartość true (np. Notatnik). Mogę zgłosić te aplikacje, ale mój program .net nie może ich odczytać, a system.io.file.exists zwraca wartość false. Sprawdziłem różne uprawnienia bez powodzenia. Wydaje się być izolowany do kilku aplikacji, ale nie jestem pewien dlaczego.
robi uwagę, że program jest uruchomiony pod masz uprawnień do przeglądania tej lokalizacji? Jeśli nie, otrzymasz fałszywe w tym wezwaniu. – Oded
Tak, i może znaleźć inne aplikacje w tym katalogu. – Morcalavin
możliwy duplikat [C# Sprawdź, czy plik wykonywalny istnieje w ścieżce systemu Windows] (http://stackoverflow.com/questions/3855956/c-sharp-check-if-an-executable-exists-in--windows-path) – Arion