Uprawnienia : Katalog, plik

0

W jaki sposób sprawdzić czy użytkownik ma uprawnienia do zapisu w jakimś katalogu w konkretnym pliku.
Problem powstał kiedy aplikację uruchomił użytkownik , który ma tylko uprawnienia do odczytu a aplikacja ma funkcję zapisu i program wywala się (XP i 2000).

Proszę o pomoc jak sprawdzić jakie użytkownik ma uprawnienia do pliku katalogu.

Z góry dziękuję za pomoc życzliwym.

0

GetFileAttributes/GetFileAttributesEx

0

GetFileAttributes/GetFileAttributesEx

ŁF: Ale jemu chyba nie chodzi o atrybuty plików, tylko o uprawnienia użytkownika.

0

Też mi się tak wydaje, poza tym w Delphi 6 (nie wiem jak w wyższych) nie ma tych funkcji. Jest za to FileGetAttr.

0

GetFileAttributes/GetFileAttributesEx

ŁF: Ale jemu chyba nie chodzi o atrybuty plików, tylko o uprawnienia użytkownika.

wiem, ale nie mogę znaleźć niczego sensowniejszego.
można spróbować jeszcze otworzyć plik do zapisu w klauzuli try/except.

[dopisane]
blok try.. except nie działa?
więc tak:

  • GetSecurityInfo albo GetNamedSecurityInfo
  • dostaniesz wypełnioną strukturę PSECURITY_DESCRIPTOR
  • wsadzasz ją z paroma innymi rzeczami do AccessCheck i już wiesz, czy masz odpowiednie prawo.
0

Witam Panów.

Problem to nie atrybuty plików i katalogów, lecz uprawnienia.
Potrzebuję odczytać czy użytkownik, który uruchomił moją aplikację ma uprawnienia do zapisywania w katalogu, pliku, jeśli nie ma to muszę ominąć procedurę lub zamknąć program wraz z komunikatem o braku uprawnień.
Teraz to wygląda tak, że program w ogóle się nie uruchamia lub generuje błąd.

0

otworzyć plik do zapisu w klauzuli try/except.

Ble. Try-exept po kiego? Wystarczy {$i-} i sprawdzenie ioresult();

1 użytkowników online, w tym zalogowanych: 0, gości: 1