ld.exe: nie można otworzyć pliku wyjściowego...: Odmowa uprawnień

Niedawno zainstalowałem CodeBlocks z mingw32 na Windows 7 Ultimate 32bit, aby odkurzyć moje umiejętności w c, ale ten problem trochę mnie zaskoczył.

Postanowiłem uruchomić krótki Generator Fibonacciego, aby upewnić się, że moja konfiguracja działa, ale napotkałem przeszkodę.

Program kompiluje, linkuje i tak dalej i dostaję odpowiedni plik wykonywalny, który działa zgodnie z oczekiwaniami.

Problemy pojawiają się, jeśli spróbuję skompilować ponownie, wtedy dostaję "po": {]}

c:/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.exe: cannot open output file bin\Debug\Fibonacci.exe: Permission denied

Nie mogę nawet edytować uprawnień wygenerowanego pliku wykonywalnego.

Sprawdziłem zwykłych podejrzanych:

  • plik wykonywalny naprawdę nie działa.
  • ścieżka do pliku wykonywalnego jest odczytywalna/zapisywalna do mingw32 (w przeciwnym razie nie byłby w stanie zbudować w pierwszej kolejności)
  • Nie będę prowadził Cygwina w żadnej formie ani formie.

A teraz Zabawne: zwykle po kilku minutach wszystkie pliki wykonywalne generowane przez mingw32, które wyświetlają Odmowa dostępu automatycznie zniknie bez mojej interwencji.

Wygooglowałem to nieco, ale większość innych wyników była niejasna lub nie ma zastosowania.

Zastanawiam się, czy jest jakieś ustawienie Bezpieczeństwa Windows 7 odtwarzanie havoc z moim .exe, ale nie jestem tak kompetentny w Win 7, aby wiedzieć, od czego zacząć poszukiwania.

Ktoś ma jakieś pomysły?
Author: gzzzur, 2011-10-05

11 answers

Miałem dokładnie ten sam problem zaraz po wyłączeniu niektórych (moim zdaniem) usług Windows. Okazało się, że po ponownym włączeniu "Application Experience" wszystko zaczęło działać dobrze.

Może po prostu musisz włączyć tę usługę? Aby włączyć doświadczenie aplikacji:

  1. Kliknij przycisk WINDOWS start.

  2. W polu "Szukaj programów i plików" wpisz services.msc i kliknij przycisk Szukaj. Nowe okno z tytułem " usługi" otwiera.

  3. Kliknij prawym przyciskiem myszy na linii "Application Experience" i wybierz "Properties" z menu podręcznego.

  4. Zmień typ uruchamiania na " automatyczny (opóźniony start)".

  5. Uruchom ponownie komputer.

Doświadczenia aplikacji powinny zapobiec problemowi w przyszłości.

 32
Author: Ralf,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-01 19:18:39

Jeśli uważasz, że plik wykonywalny jest zablokowany przez proces, spróbuj Process Explorer z SysInternals. W pliku/uchwyt wpisz Fibonacciego.exe i powinieneś zobaczyć kto trzyma plik.

Jeśli to nie wystarczy, możesz użyć Monitora procesów (z SysInternals, ponownie), aby śledzić aktywność wszystkich procesów w Twoim systemie na Fibonacciego.exe. Przy odrobinie analizy (stosy połączeń) możesz dowiedzieć się, dlaczego dostęp do pliku jest zabroniony i co sprawia, że zniknie.

 20
Author: Thierry Franzetti,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-10-10 20:09:46

Twój program nadal działa. Musisz go zabić, zamykając okno wiersza poleceń. Jeśli naciśniesz klawisz control alt delete, task manager, process ' s (zabij te, które pasują do Twojej nazwy pliku).

 11
Author: plodoc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-08 02:13:53

Najlepszym rozwiązaniem jest przejście do konsoli w Eclipse IDE i kliknięcie czerwonego przycisku , aby zakończyć działanie programu. Zobaczysz, że twój program jest uruchomiony, a wyniki mogą być tam widoczne. :) !!

 6
Author: Black_Rider,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-14 16:10:51
  1. Otwórz Menedżera zadań - > procesy - > kliknij .exe (Fibonacci.exe) - > End Process

    If it doesn ' t work

  2. Zamknij Eclipse IDE (lub cokolwiek IDE używasz) i powtórz Krok 1.

 3
Author: Khokhar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-25 10:17:57

Miałem to samo zachowanie i naprawiłem to uruchamiając Code:: Blocks jako administrator.

 2
Author: Luis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-27 17:38:49

Miałem podobny problem. Korzystając z darmowego narzędzia o nazwie Unlocker (wersja 1.9.2), odkryłem, że moje oprogramowanie antywirusowe (Panda free) pozostawiło wiszącą blokadę na pliku wykonywalnym, mimo że nie wykryło żadnego zagrożenia. Unlocker był w stanie go odblokować.

 2
Author: R. Strickland,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-09-12 15:31:09

Mam ten sam problem. Przeczytaj to . Wyłączono oprogramowanie antywirusowe (mcaffee). Et voila

Potwierdzone przez dziennik antywirusowy:

Blocked by Access Protection rule d:\mingw64\x86_64-w64-mingw32\bin\ld.exe d:\workspace\cpp\bar\foo.exe User-defined Rules:ctx3 Action blocked : Create

 1
Author: Hey StackExchange,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-15 20:13:58

To może być Twoje oprogramowanie antywirusowe.

W moim przypadku Malwarebytes trzymał uchwyt na pliku wykonywalnym mojego programu:

Tutaj wpisz opis obrazka

Używanie Process Explorer do zamknięcia uchwytu lub po prostu wyłączenie antywirusa na trochę działa dobrze.

 1
Author: Herobrine2Nether,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-07 20:57:05

Dostałem ten błąd podczas korzystania z edytora Atom i mingw (poprzez pakiet o nazwie gpp-compiler) dla C++. Zamknięcie otwartego okna konsoli naprawiło mój problem.

 0
Author: Pro Q,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-30 12:41:03

Przyczyna Problemu: Proces bieżącego programu jest nadal uruchomiony bez ingerencji. (To jest powód, dla którego nie masz tego problemu po ponownym uruchomieniu)

Poprawka jest prosta: Przejdź do cmd i wpisz polecenie taskkill-im Nazwa procesu.exe-f

Eg:

 taskkill -im demo.exe -f

TUTAJ,

Demo - to moja nazwa programu

 0
Author: Arun Joshla,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-23 10:30:18