Dlaczego w przy odpalaniu procedury zawierającej assign FreePascal wywala błąd "exitcode = 5". Co może być powodem i jak to rozwiązać?
Trudno zgadywać ale prawdopodobnie nie masz praw dostępu do pliku np. być może wywołujesz później rewrite i chcesz napisać otwarty plik. Plik może być też tylko do odczytu a Ty go chcesz napisać lub po prostu nie masz odpowiednich uprawnień np. w nowych systemach w niektórych folderach nie można nic zapisywać (chyba że na prawach admina).
Właśnie problem jest tego typu, że nawet jeśli w kodzie występuje sama procedura i tak ma miejsce błąd. Jeśli to kwestia dostępu to co wtedy należy zrobić? Prawa na plik ustawiłem maksymalne.
Wrzuć kod tej procedury. Sprawdź czy na pewno masz odpowiednie uprawnienia np. czy tego nie chcesz robić w systemie Vista lub nowszym w którymś z folderów (np. Program Files) w których "zwykły user" zapisywać nie może.
Dlaczego w przy odpalaniu procedury zawierającej assign FreePascal wywala błąd "exitcode = 5".
Tak jak wspomniał kolega wyżej - program nie może uzyskać dostępu do pliku z jakiegoś powodu; Najlepiej by było jakbyś pokazał kod odpowiedzialny za próbę otwarcia pliku - wtedy będzie można napisać coś więcej;
W kiedyś znalezionej dokumentacji błędów I/O jest to opisane w taki sposób:
I/O Error :5
IO Error 5L
ERROR_ACCESS_DENIED
MessageText:
Access is denied.
Do postu dołączam listę prawdopodobnie wszystkich błędów I/O w Delphi - zapisz sobie i następnym razem poszukaj zanim napiszesz taki temat na forum;
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.