11

Inno Setup の Pascal スクリプトを使用して、Windows レジストリ (この場合は Google Sketchup) からアプリケーションのインストール ディレクトリを取得しようとしているので、そこにプラグインをインストールできます。

レジストリ キーには名前がありません。Regedit には "(Default)" だけがあります。

私はこれを試しました:

RegQueryStringValue( HKLM, 'SOFTWARE\Google\Google Sketchup 6', '(Default)', pluginLoc );

しかし、それは値を返しません。助言がありますか?

4

1 に答える 1

19

SubKeyName次のように、空のままにしておきます。

[Code]
function InitializeSetup(): Boolean;
var
  V: string;
begin
  if RegQueryStringValue(HKLM, 'SOFTWARE\Google\Google Sketchup 6', '', V) then
    MsgBox('Value is "' + V + '"', mbInformation, MB_OK);
  Result := TRUE;
end;

基になる API 呼び出しの対応するドキュメントはRegQueryValueEx()用であり、次のように述べられています。

レジストリ値の名前。

lpValueName が NULL または空の文字列 "" の場合、関数は、キーの名前のない値または既定値があれば、その型とデータを取得します。

于 2009-05-28T05:17:43.640 に答える