This resource is required for a component that needs to register a Component Object Model (COM) InProc server during the first boot of the run-time image. First Boot Agent (FBA) calls the Win32 function LoadLibrary and then optionally calls DllRegisterServer/DllUnregisterServer and/or DllInstall.
The following extended properties can be set for the FBA DLL/COM Registration resource in Component Designer or in Target Designer.
- Arguments - Type - Required or optional - String - Optional - Specifies the value for the pszCmdLine parameter passed to the **DLLInstall****entry point. - Arguments containing paths should use environment variables in path names. For more information, see Predefined System Environment Variables. - The default value is an empty string. 
- ComponentVSGUID - Type - Required or optional - GUID - Not applicable - Reserved for Microsoft. 
- DllInstall - Type - Required or optional - Boolean - Required - If True, the **DllInstall****entry point is called. Both DLLInstall and DLLRegister can be set to True. The default value is False. 
- DllRegister - Type - Required or optional - Boolean - Required - If the default value of True, then either the **DllRegisterServer****or the DllUnregisterServer entry point is called based on the value of the Flags property. Both DLLInstall and DLLRegister can be set to True. 
- ErrorControl - Type - Required or optional - Integer - Required - Controls how FBA deals with an error when processing an operation. - 0: Continue on error. Default.
- 1: Halt on error.
 - If the return value of LoadLibrary, GetProcAddress, or the DLL entry point is greater than 0x80000000, then FBA considers this an error and behaves according to the value of this property. 
- Filepath - Type - Required or optional - String - Required - Specifies the name of the DLL to be loaded. This value must be a fully qualified path, for example, %11%\Your.dll. Use environment variables in path names. For more information, see Predefined System Environment Variables. 
- Flags - Type - Required or optional - Integer - Required - Bitmask that is interpreted as follows: - Bit 0: Specifies which entry point is called first, DLLRegisterServer/DllUnregisterServer or DLLInstall. If set, then DLLInstall is called first. Default.
- Bit 1: Specifies the type of operation to be performed. If **DllRegisteris True and this bit is 0 then DllRegisterServer is called otherwise DllUnregisterServer is called. If **DllInstallis True and this bit is 0, then DllInstall(True, <Arguments>) is called; otherwise, DllInstall(FALSE, <Arguments>).
 
- Reboot - Type - Required or optional - Boolean - True - Specifies if a reboot is required following the completion of the FBA operation. - True: FBA completes its operation, reboots, and then continues.
- FALSE: FBA continues to process without rebooting. Default.
 
- Start - Type - Required or optional - Integer - Required - Reserved for Microsoft. Must be 1. 
- Timeout - Type - Required or optional - Integer - Required - Specifies the time, in seconds, that a program is allowed to execute before being terminated by FBA. - The default value of 0 indicates an infinite number of seconds. 
- Type - Type - Required or optional - Integer - Required - Reserved for Microsoft. Must be 2. 
The following table shows how the various combinations of Flags, DllInstall, and DllRegister are interpreted.
| DllRegister | DLLInstall | Flags | Effect | 
|---|---|---|---|
| False | False | 0 | Not applicable | 
| True | False | 0 | DllRegisterServer | 
| False | True | 0 | DllInstall(TRUE) | 
| True | True | 0 | DllRegisterServer followed by DllInstall(TRUE) | 
| False | False | 1 | Not applicable | 
| True | False | 1 | DllRegisterServer | 
| False | True | 1 | DllInstall(TRUE) | 
| True | True | 1 | DllInstall(TRUE) followed by DllRegisterServer | 
| False | False | 2 | Not applicable | 
| True | False | 2 | DllUnregisterServer | 
| False | True | 2 | DllInstall(FALSE) | 
| True | True | 2 | DllUnregisterServer followed by DllInstall(FALSE) | 
| False | False | 3 | Not applicable | 
| True | False | 3 | DllUnregisterServer | 
| False | True | 3 | DllInstall(FALSE) | 
| True | True | 3 | DllInstall(FALSE) followed by DllUnregisterServer | 
See Also
Last updated on Wednesday, October 18, 2006
© 2006 Microsoft Corporation. All rights reserved.