View Issue Details

IDProjectCategoryView StatusLast Update
0003175Far ManagerMacropublic2016-02-21 07:38
ReporterSmitis Assigned Toshmuel  
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionfixed 
Product Version3.0 
Summary0003175: Отключить в LuaMacro редирект WOW64 для функций работы с реестром
DescriptionОтключить в LuaMacro редирект WOW64 в FAR x86 запущенном под Windows x64 для функций работы с реестром.
Steps To ReproduceВнести данные в реестр
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\WowTest]
"test1"="11111"
"test2"="22222"
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\WowTest]
"test1"="11111"

Из ФАРа читает:
lua:=win.GetRegKey("HKLM",[[SOFTWARE\WowTest]],"test1")
Не читает:
lua:=win.GetRegKey("HKLM",[[SOFTWARE\WowTest]],"test2")
Additional InformationОбсуждение в форуме: http://forum.farmanager.com/viewtopic.php?p=135540#p135540
TagsNo tags attached.
BuildLFb527

Activities

shmuel

2016-02-08 21:27

developer   bugnote:0014291

LuaFAR build 555.
Нужно тестировать, предварительно ознакомившись с изменениями по мануалу LuaFAR.
Если что неясно - спрашивайте.

Smitis

2016-02-09 09:32

reporter   bugnote:0014293

Ок, только чуть позже

Smitis

2016-02-13 20:07

reporter   bugnote:0014302

Работает.
Как я понял, с DeleteRegKey облом, там такое не поддерживается?
На XP проверить пока не удалось, но на 2003 работает нормально, причём даже с параметром KEY_WOW64_64KEY. Поэтому вопрос, может использовать KEY_WOW64_64KEY по умолчанию, вместо 0?

shmuel

2016-02-13 20:37

developer   bugnote:0014303

win.DeleteRegKey должна была бы использовать внутри RegDeleteKeyEx, но последняя поддерживается, только начиная от Windows XP Professional x64 Edition. Я пока не определился, что с этим делать, но не хотелось бы разного поведения одной функции на разных ОС. (Как вариант, можно было бы добавить ещё функцию или добавить параметр к этой. Пока не знаю.)

Флаги: по умолчанию сделано прежнее поведение, то-есть редирект. Не хотелось отклоняться от оригинала.

Smitis

2016-02-14 15:37

reporter   bugnote:0014309

> Не хотелось отклоняться от оригинала.

Просто сам ФАР при работе с файловой системой уже отключает редирект. Соответственно, файловые функции lua работают без редиректа. Логично было бы тоже и для реестра. Но это уже на Ваше усмотрение.

shmuel

2016-02-14 15:50

developer   bugnote:0014310

> Соответственно, файловые функции lua работают без редиректа.

Можете привести пример?

shmuel

2016-02-19 19:48

developer   bugnote:0014330

Добавлена функция win.DeleteRegKeyEx, обрабатывающая флаги, наподобие остальных функций.
Работать будет только если функция WINAPI RegDeleteKeyExW поддерживается операционной системой, иначе будет возвращать false.

Issue History

Date Modified Username Field Change
2016-02-08 10:57 Smitis New Issue
2016-02-08 11:04 shmuel Additional Information Updated View Revisions
2016-02-08 21:27 shmuel Note Added: 0014291
2016-02-08 21:27 shmuel Assigned To => shmuel
2016-02-08 21:27 shmuel Status new => feedback
2016-02-09 09:32 Smitis Note Added: 0014293
2016-02-09 09:32 Smitis Status feedback => assigned
2016-02-13 20:07 Smitis Note Added: 0014302
2016-02-13 20:37 shmuel Note Added: 0014303
2016-02-14 15:37 Smitis Note Added: 0014309
2016-02-14 15:50 shmuel Note Added: 0014310
2016-02-19 19:48 shmuel Note Added: 0014330
2016-02-19 19:48 shmuel Status assigned => feedback
2016-02-21 07:38 shmuel Build => LFb527
2016-02-21 07:38 shmuel Status feedback => closed
2016-02-21 07:38 shmuel Resolution open => fixed