Member 14643676 Ответов: 2

Inno setup: каковы параметры функции "regquerystringvalue"?


Привет Ребята,

Я новичок в настройке Inno, я пытаюсь исправить существующий код, который должен получить путь Matlab с помощью
RegQueryStringValue


Мой вопрос таков: как узнать параметры, передаваемые этой функции, имя подкейна, Руткей и т. д.? Другими словами, из приведенного ниже кода, где
SOFTWARE\MATLAB\9.
и
MATLABROOT
откуда он взялся?

Мы очень ценим вашу помощь.

Что я уже пробовал:

<pre>function Getmatlab(param: string): string;
var
  MatlabRoot: string;
begin
  log('start')
  if RegQueryStringValue(HKEY_LOCAL_MACHINE_64, 'SOFTWARE\MATLAB\9.5', 'MATLABROOT', MatlabRoot) then
  begin
    // Successfully read the value
    MsgBox('Your matlab root: ' + MatlabRoot, mbInformation, MB_OK);
  end  ;
   Result := MatlabRoot;
    
end;

2 Ответов

Рейтинг:
4

RickZeeland

Пример:

MyRegKey := '{5560A93B-C797-6799-925F-98FCAD57BC36}_is1';

//  HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{5560A93B-C797-6799-925F-98FCAD57BC36}_is1
  if RegQueryStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\' + MyRegKey, 'InstallLocation', MyPath) then
// your code ...

Вы можете выполнить поиск в реестре с помощью Смерзаться, видеть: Как использовать Regedit (с картинками) - wikiHow[^]
Будьте осторожны при изменении вещей, сначала сделайте резервную копию реестра !


Member 14643676

Спасибо Вам за ваш ответ!

ссылка на regedit действительно полезна.

Рейтинг:
15

Maciej Los

Вы можете проверить это сами: Инно Сетап Помочь[^]

Вы можете быть заинтересованы в RegGetSubkeyNames[^] тоже.


Member 14643676

Спасибо Вам за ваш ответ!
функция RegGetSubkeyNames действительно интересна! Ну вот, я и выяснил, что Matlab нет в списке подразделов!! Так вот почему при установке моего приложения возникает ошибка. У вас есть идея о том, как добавить подраздел?

Огромное спасибо

Maciej Los

Извините, но у меня нет программного обеспечения Matlab. Я бы посоветовал вам прочитать это: matlab - найдите путь к приложению и скопируйте файл в этот каталог в программе Inno Setup - Stack Overflow[^]

Member 14643676

Спасибо!

Maciej Los

Всегда пожалуйста.