Atualizando informações do Registro
Depois que a fila for confirmada com êxito, você precisará atualizar as informações do Registro para o produto que está instalando. É recomendável que você aguarde até que todas as operações necessárias de cópia de arquivo tenham sido concluídas com êxito antes de alterar as informações do Registro.
Uma maneira de atualizar o registro é chamar SetupInstallFromInfSection com os sinalizadores SPINST_INIFILES, SPINST_REGISTRY ou SPINST_INI2REG especificados. Esses sinalizadores podem ser combinados em uma chamada para SetupInstallFromInfSection.
O exemplo a seguir usa SPINST_ALL^SPINST_FILES para indicar que a função deve processar todas as operações listadas, exceto operações de arquivo. Como somente as operações INI, registro e arquivo são listadas na seção Instalar , esse é um método abreviado para especificar a função que deve processar todas as operações de INI e registro.
O exemplo a seguir mostra como instalar informações do Registro usando a função SetupInstallFromINFSection .
Test = SetupInstallFromINFSection (
NULL, //Window to own any dialog boxes
//created
MyInf, //INF file containing the section
MySection, //the section to install
SPINST_ALL ^ SPINST_FILES,//which installation operations
//to process
NULL, //the relative root key
NULL, //the source root path
0, //copy style
NULL, //Message handler routine
NULL, //Context
NULL, //Device info set
NULL //device info data
);
No exemplo, OwnerWindow é NULL porque somente as operações de arquivo geram caixas de diálogo e, portanto, uma janela pai não é necessária. "MyInf" é o arquivo INF que contém a seção a ser processada. O parâmetro "MySection" especifica a seção a ser instalada. Os sinalizadores combinados, SPINST_ALL ^ SPINST_FILES, especificam quais operações de instalação processar, nesse caso, todas as operações, exceto operações de arquivo. O caminho raiz de origem é especificado como "A:\".
Como nenhuma operação de cópia está sendo processada, os parâmetros CopyFlags, MsgHandler, Context, DeviceInfoSet e DeviceInfoData não são especificados.