|
|
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
В фоксе и режиме пользователя админ запускаю RegOpenKeyEx(HKEY_CURRENT_USER,sub_key_c1,0,security_access_mask,@lnResult) для управления реестром. все работает. Но при других режимах Power User, Guest и т.д. оно не хочет довать доступ к реестру. Как эту проблему устранить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 14:51:41 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
дык только админ имеет право в реестре копаться, а гость ИМХО никак, если только ему права админа не дать. хотя на 100% не знаю - это 1-е что в голову пришло ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 16:58:21 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Power User - разве не имеет право на редоктирование реестра через прогу (Power User выбирается с базывими настройками винды)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 19:06:37 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Смотря какие ветки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2005, 19:24:33 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Меня интересуют ветки связанные с ODBC. Это ввод в реестр любых значении созданного драйвера (USERDSN). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 10:32:25 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
тут надо копаться в локальной политике на компе... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 11:33:43 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hi Недоходящий! sub_key_c1 что содержит то? "Ручками" в данный ключ можно зайти из Regedit под указанным аккаунтом? АПИшную GetLastError не пробовал применить, чтобы узнать что же за ошибка произошла? Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 12:28:09 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hello Igor Korolyov! sub_key_c1 = "Software\ODBC\ODBC.INI\"+fsql1 где fsql1 - любое название которое нужно создать или потом с него считывать. но ошибки я смотрю никакой не выползает. просто винда не дает разрешения на открытия выбранной ветки и код продолжается выполняться дальше. GetLastError - выдает 127. Че ето значит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 14:32:23 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hi Недоходящий! Упс, стормозил тут надо смотреть что сама функция возвращает - это и есть код ошибки. Кстати зачем тебе Ex версия функции, как ты формируешь маску доступа, чем не устраивает простая RegOpenKey() Ну и ясное дело нужно знть что в fsql1 содержится, есть ли такая ветка, какие установлены на неё Permissions на тестовой машине и т.п. В общем более полный код приведи. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.08.2005, 22:52:24 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hello Igor Korolyov. RegOpenKey() я не нашел описания. Только для RegOpenKeyEx. Вот код fsql1 = "а" && Это нужно создать в реестре * Объявление необходимых переменных для работы с реестром REG_SZ = 1 HKEY_CLASSES_ROOT = -2147483648 HKEY_CURRENT_USER = -2147483647 HKEY_LOCAL_MACHINE = -2147483646 HKEY_USERS = -2147483645 security_access_mask = 983103 security_access_mask_set = 2 * Декларирование необходимых функций declare RegCreateKeyEx in advapi32.dll integer, string, integer, string, integer, integer, integer, integer @, integer @ declare RegOpenKeyEx in advapi32.dll integer, string, integer, integer, integer @ declare RegQueryValueEx in advapi32.dll integer, string, integer, string, string, integer @ DECLARE INTEGER RegSetValueEx IN advapi32.dll INTEGER,STRING, INTEGER,INTEGER,STRING @,INTEGER DECLARE INTEGER RegCloseKey IN advapi32.dll INTEGER sub_key_c1 = "Software\ODBC\ODBC.INI\"+fsql1 sub_key_c1_1 = "Software\ODBC\ODBC.INI\ODBC Data Sources" * Анулирование необходимых переменных для декларированных функций name_c = "" lnResult_c=0 Disposition_c=0 lnResult = 0 RegCreateKeyEx(HKEY_CURRENT_USER,sub_key_c1,0,name_c,0,security_access_mask,0,@lnResult_c,@Disposition_c) chan_c2='driver' buff_2="C:\WINNT\System32\SQLSRV32.dll" RegOpenKeyEx(HKEY_CURRENT_USER,sub_key_c1,0,security_access_mask,@lnResult) RegSetValueEx(lnResult,chan_c2,0,reg_sz,@buff_2,40) chan_c6=fsql1 buff_6="SQL Server" RegOpenKeyEx(HKEY_CURRENT_USER,sub_key_c1_1,0,security_access_mask ,@lnResult) * Так вот! Здесь при запросе открытия lnResult получает 0. Если ноль то винда дала отказ открытия данной ветки для внесения туда чего-либо. А требуется как-то получить положительное число. В первом открытии число получается, а здесь 0! RegSetValueEx(lnResult,chan_c6,0,reg_sz,@buff_6,15) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2005, 12:04:42 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hi Недоходящий! 1) Посмотри в MSDN online LONG RegOpenKey( HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult ); Ну и другие "упрощённые" функции тоже посмотри. 2) РЕЗУЛЬТАТЫ от каждого вызова Reg* смотри - если там не 0 - то это и есть код ошибки. Сами "расшифровки" кодов можно получить через АПИ функцию FormatMessage или просто посмотреть в winerror.h - если стоит MS VC++, BCB или иное сишное средство разработки, или просто есть заголовочные файлы. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2005, 23:51:24 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
TO Igor Korolyov Файла ошибок у меня нет (если омжете кинуть на мыло или дать сылку было бы просто здорово). НА MSDN еще в поисках, но пока не нахожу. А при запуске проги почему-то выводится число больше 0 и ветка создается. Почему, если любое число это ошибка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2005, 14:20:27 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hi Недоходящий! > А при запуске проги почему-то выводится число больше 0 и ветка создается. > Почему, если любое число это ошибка? Выводится КАКИМ ИМЕННО из твоей кучи АПИ вызовов? Может как раз создание значения и не проходит - а ветку создаёт. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 00:37:19 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
To Igor Korolyov Фокс выводит при ф-ции Create - 0 в первом открытии ветки - 544 во втором - 588. Но при последующих запусках числа меняются на разные величины! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 11:51:58 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
Hi Недоходящий! Ты не понял... 1) Декларации нужно изменить, чтобы ВСЕ функции были объявлены как возвращающие INTEGER. 2) Интересует ИМЕННО то что возвращает КАЖДАЯ функция (а она НЕ МОЖЕТ возвращать ни 544 ни 588 - т.к. это некорректные коды ошибок), а не то какое значение принимает параметр переданный по ссылке. 3) DSN создаются НЕ путём записи чего-то в реестр, а через вызов соответствующего АПИ - в частности SQLConfigDataSource из библиотеки ODBCCP32.DLL - примеры использования из фокса найти нетрудно. 4) Вообще в подавляющем большинстве случаев DSN как таковые НЕ НУЖНЫ - т.к. можно просто использовать строку соединения включающую имя драйвера и прочие атрибуты соединения. 5) Вообще работать нужно хотя-бы АККУРАТНО - в частности если уж создал хендл к ключу реестра, то не поленись и ЗАКРЫТЬ его по завершении работы. 6) В поставке VFP есть FFC класс registry (как в виде prg так и в виде vcx) - это обёртка над соответствующими функциями упрощающая работу. Если хочешь сам работать с АПИ, то хотя-бы изучи как это сделано в данном классе. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2005, 00:08:45 |
|
||
|
Помогите с реестром винды
|
|||
|---|---|---|---|
|
#18+
To Igor Korolyov По поводу строки соединения я согдасен, это я тоже использую. Но мне в ближайшее время понадобиться работа с реестром, поэтому я заранее спрашиваю чтоб решить все вопросы. А с фоксом я не так долго работаю, поэтому многих вещей не знаю. Закрытее веток я забыл дописать, они у меня в проге есть. За файл спасибо, ща зделаю и посмотрб что получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2005, 10:39:49 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33216433&tid=1593633]: |
0ms |
get settings: |
9ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
197ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 239ms |
| total: | 532ms |

| 0 / 0 |
