0

MsiSetProperty/MsiGetProperty メソッドを使用して、INSTALLDIR プロパティの設定/取得を試みました。ただし、InstallscriptMSI プロジェクトの場合は機能しません。ここで何が欠けていますか?

他のフォーラムで、Installshield プロパティへのアクセスが制限されている場合があることを知りました。

4

1 に答える 1

0

ノート:

MsiGetProperty および MsiSetProperty プロパティは、アクティブな .msi データベースにアクセスできず、Windows インストーラー プロパティを認識しない遅延 InstallScript カスタム アクションには使用できません。実行スクリプトに書き込まれた情報のみにアクセスできます。

例:

// Include header file for built-in functions 

#include "isrt.h" 

// Include header file for MSI API functions and constants 

#include "iswi.h"
export prototype Func1(HWND);
function Func1(hMSI)
STRING svName;
NUMBER nvSize, nResponse; 

begin 

// Retrieve the user's name from the MSI database 

nvSize = 256; 

MsiGetProperty (hMSI, "USERNAME", svName, nvSize); 



nResponse = AskYesNo ("Your name will be registered as " + 

                     svName + ". Is this correct?", YES); 


if nResponse = NO then 

    AskText ("Enter the name that will be registered for " + 

             "this product.", svName, svName); 

    MsiSetProperty(hMSI, "USERNAME", svName); 

endif; 

end; 
于 2012-05-29T05:03:16.360 に答える