pekfos Temat założony przez niniejszego użytkownika |
[WinAPI] RegCreateKeyEx: error 183. » 2012-01-30 16:37:54 HKEY dotxxx; DWORD disp; LONG ret = RegCreateKeyEx( HKEY_CLASSES_ROOT, ".xxx", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, & dotxxx, & disp ); if( ret != ERROR_SUCCESS ) { printf( "Cannot create/open .xxx key. (%ld)\n", GetLastError() ); return 0; } Gdy klucz .xxx istnieje, problemu nie ma. Kiedy nie istnieje, problem jest. Powinno być chyba na odwrót, chociaż RegCreateKeyEx tworzy klucz lub otwiera istniejący.. Co jest nie tak? PS: a teraz jeszcze "lepiej": Cannot create/open .xxx key. (0) (na zmianę z Cannot create/open .xxx key. (183) ) PS2: podany kod to fragment funkcji eksportowanej z biblioteki DLL (może ma to jakieś znaczenie..) PS3: Program "uruchomiony jako administrator" nie ma już z tym problemu. Jak zatem radzą sobie programy uruchomione normalnie? PS4: I czemu jest taki dziwny błąd zamiast np ERROR_ACCESS_DENIED? |
|
DejaVu |
» 2012-01-30 18:52:17 Jeżeli Win7 to prawdopodobnie UAC Ci nie pozwala na dostęp. |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2012-01-30 18:55:13 Vista. To by się zgadzało :) ale dlaczego ERROR_ALREADY_EXISTS/ERROR_SUCCESS? |
|
DejaVu |
» 2012-01-30 18:57:18 Bo tworzenie klucza != odczytywanie klucza. Klucz może utworzyć admin, odczytywać może użytkownik. Są gałęzie w których może użytkownik tworzyć klucze (bodajże Current User) i UAC go nie będzie blokował. |
|
jankowalski25 |
» 2012-01-30 18:57:37 PS3: Program "uruchomiony jako administrator" nie ma już z tym problemu. |
Różne typy kont mają różne uprawnienia do różnych elementów systemu operacyjnego. Na moim XP mam grę, która działa dla Administratorów, a dla użytkowników z nieznanej przyczyny już nie. Pewnie ich konta nie mają dostępu do niektórych elementów systemu operacyjnego. Z nieznanych powodów u mnie konto gościa, w przeciwieństwie do reszty użytkowników, nie ma dostępu do dźwięku. Jak zatem radzą sobie programy uruchomione normalnie? |
Być może jeśli program nie może uzyskać dostępu do niektórych elementów, to po prostu nie działa poprawnie. Skoro wyświetla się Cannot create/open .xxx key. |
, to prawdopodobnie program nie ma uprawnień do tworzenia kluczy rejestru w tym miejscu. |
|
yoogi |
» 2012-01-30 19:49:28 Według mnie pozwala, ale ta kropka na początku psuję to co cieszy :) |
|
pekfos Temat założony przez niniejszego użytkownika |
» 2012-02-01 14:20:02 @yoogi: Nie wiem czy cię dobrze zrozumiałem.. Ale odpal sobie regedit i zobacz, co jest w kluczu HKEY_CLASSES_ROOT :P |
|
yoogi |
» 2012-02-04 01:52:45 Zwracam honor, jednak można. Trochę "syf" tam jest. Domyślam się, że to jest na zasadzie rozszerzeń plików i ikonki w explorerze, mogę się mylić, ale jak to już bywa, nie chcę mi się nawet wpisać na klawiaturze "google.pl" :) |
|
« 1 » |