|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
Моё почтение всем форумчанам! Не подскажите как программно искать реестр Windows если известно название ключа, но заранее неизвестно точное расположение ветки реестра? Я имею ввиду возможен ли поиск с использованием подстановочных символов или что-то наподобие этого? Thanks in advance! ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 14:27 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
studierenвозможен ли поиск с использованием подстановочных символов или что-то наподобие этого?Нет такого. Энумеруй ветки и перебирай в поисках нужного ключа. Заодно обдумай, как будешь выворачиваться от одноимённых ключей (всяко ж бывает...). ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2014, 14:48 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
Создал вот такую программку (можно использовать как в VBA, так и в VB скрипт). Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79.
Если не ошибаюсь, то в WMI как-то можно фильтровать. Вот примерчик (правда случай совсем другой): ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2014, 16:27 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
Код: vbnet 1. 2. 3. 4. 5. 6. 7.
Может и здесь как-то можно применить фильтр? Никто не сталкивался с подобной задачкой? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2014, 16:32 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
studierenМожет и здесь как-то можно применить фильтр?Где и что ещё нужно фильтровать-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2014, 20:53 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
AkinaГде и что ещё нужно фильтровать-то? Да я всё о том же. Знаю название ключа, скажем "sandboxmode", но заранее не знаю в какой ветке находится этот ключ, т.к. в разных машинах ОС и офис могут быть абсолютно разными! Надо найти везде и присвоить значение 0. Как то так. P.S. Случаи когда у пользователя нет прав на изменение реестров можно не взять в расчёт, в таких случаях админ будет разруливать (конечно не плохо было бы решить и такую проблему, но я не хакер, для меня это не критично). ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 08:00 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
[quot studieren]AkinaЗнаю название ключа, скажем "sandboxmode", но заранее не знаю в какой ветке находится этот ключ, т.к. в разных машинах ОС и офис могут быть абсолютно разными! Надо найти везде и присвоить значение 0. Как то так. Это ерунда. А теперь представь, что у некоего стороннего приложения есть такой ключ. И что его обнуление делает из него (а ещё хуже - из хранящихся в нём критичных данных) мелкий фарш... и ты своими руками организуешь этот локальный армагеддончик... чем расплачиваться-то будешь? Если это ключ Офиса - то изволь штатно определить ветку реестра именно Офиса (вернее, всех установленных на станции Офисов - они могут присутствовать и использоваться параллельно и даже одновременно!), и именно в нужном месте (а оно строго определено!) менять именно требуемый ключ. Да, это придётся покопать техдоки чуть дальше обложки, куда деваться... ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 10:48 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
Akina...Если это ключ Офиса - то изволь штатно определить ветку реестра именно Офиса (вернее, всех установленных на станции Офисов - они могут присутствовать и использоваться параллельно и даже одновременно!), и именно в нужном месте (а оно строго определено!) менять именно требуемый ключ. Да, это придётся покопать техдоки чуть дальше обложки, куда деваться... Это как? Например, если у Вас Win XP и офис 97, то ветка выглядит так: HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\3.5\engines Если офис 2000, 2002, 2003, то тогда так HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\engines Если у Вас офис 2007: HKEY_LOCAL_MACHINE\Software\Microsoft\Office\12.0\Access Connectivity Engine\Engines Офис 2010: HKEY_LOCAL_MACHINE\Software\Microsoft\Office\14.0\Access Connectivity Engine\Engines Если у Вас Win 7: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Office\14.0\Access Connectivity Engine\Engines HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines Это далеко не весь перечень. Ещё раз повторяю, ОС могут быть абсолютно разными (XP, Vista, 7, 8 и т.д.), офис тоже (2000, 2002, 2003, 2007, 2010, 2013 и т.д.). Microsoft к сожалению из версии к версии меняет как ему вздумается. А без изменения данного ключа в MS Access не выключается режим "песочница" и не работает многие встроенные функции / процедуры VBA. Я хочу при запуске программы найти значения "sandboxmode" в любом ОС и в любом офисе и подправить. Как быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 12:10 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
studieren, Определить битность системы, ОС, версию офиса и сгенерировать путь. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 13:59 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
iMrTidystudieren, Определить битность системы, ОС, версию офиса и сгенерировать путь. Завтра появится новая ОС и/или новый офис, ну и переделать программу заново соответствующим образом. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 16:41 |
|
Поиск реестра Windows
|
|||
---|---|---|---|
#18+
studiereniMrTidystudieren, Определить битность системы, ОС, версию офиса и сгенерировать путь. Завтра появится новая ОС и/или новый офис, ну и переделать программу заново соответствующим образом. :) Понятно, Вы хотите написать код на века, не самая удачная идея. Программы - продукт скоропортящийся. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2014, 20:42 |
|
|
start [/forum/topic.php?fid=60&fpage=42&tid=2156348]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
126ms |
get tp. blocked users: |
2ms |
others: | 290ms |
total: | 514ms |
0 / 0 |