public virtual void LoadInstallConfig(string configFile)
{
// load configuration from command line.
if (!String.IsNullOrEmpty(configFile))
{
InstallConfig = LoadInstallConfigFromFile(configFile);
}
// load it from a resource if not already loaded.
else if (InstallConfig == null)
{
foreach (string resourcePath in Assembly.GetEntryAssembly().GetManifestResourceNames())
{
if (resourcePath.EndsWith("InstallConfig.xml"))
{
InstallConfig = LoadInstallConfigFromResource(resourcePath, Assembly.GetEntryAssembly());
break;
}
}
if (InstallConfig == null)
{
throw new ServiceResultException(StatusCodes.BadConfigurationError, "Could not load default installation config file.");
}
}
// override the application name.
if (String.IsNullOrEmpty(InstallConfig.ApplicationName))
{
InstallConfig.ApplicationName = ApplicationName;
}
else
{
ApplicationName = InstallConfig.ApplicationName;
}
// update fixed fields in the installation config.
InstallConfig.ApplicationType = (Opc.Ua.Security.ApplicationType)(int)ApplicationType;
InstallConfig.ExecutableFile = Application.ExecutablePath;
if (InstallConfig.TraceConfiguration != null)
{
InstallConfig.TraceConfiguration.ApplySettings();
}
}
#endregion