本文整理汇总了C#中System.Configuration.Install.InstallContext.LogLine方法的典型用法代码示例。如果您正苦于以下问题:C# InstallContext.LogLine方法的具体用法?C# InstallContext.LogLine怎么用?C# InstallContext.LogLine使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Configuration.Install.InstallContext
的用法示例。
在下文中一共展示了InstallContext.LogLine方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: lock
// Load an assembly by name and get the information object for it.
internal static AssemblyInfo LoadInstallerAssembly
(String filename, InstallContext logContext)
{
String fullName;
AssemblyInfo info;
AssemblyInfo[] newAssemblies;
int index;
lock(typeof(AssemblyInstaller))
{
try
{
// See if we have a cached information block,
// from when we loaded the assembly previously.
fullName = IO.Path.GetFullPath(filename);
if(assemblies != null)
{
for(index = 0; index < assemblies.Length; ++index)
{
info = assemblies[index];
if(info.filename == fullName)
{
if(info.loadException == null)
{
return info;
}
throw info.loadException;
}
}
newAssemblies = new AssemblyInfo
[assemblies.Length + 1];
Array.Copy(assemblies, 0, newAssemblies, 0,
assemblies.Length);
info = new AssemblyInfo();
newAssemblies[assemblies.Length] = info;
assemblies = newAssemblies;
}
else
{
info = new AssemblyInfo();
assemblies = new AssemblyInfo [] {info};
}
// Try to load the assembly into memory.
info.filename = fullName;
try
{
info.assembly = Assembly.LoadFrom(fullName);
}
catch(SystemException e)
{
info.loadException = e;
throw;
}
// Wrap the assembly in an installer.
info.installer = new AssemblyInstaller();
info.installer.assemblyPath = filename;
info.installer.info = info;
// Search for all public installer types.
LoadInstallers(info);
// The assembly is ready to go.
return info;
}
catch(SystemException e)
{
if(logContext != null)
{
if(logContext.IsParameterTrue("ShowCallStack"))
{
logContext.LogLine
("LoadAssembly: " + e.ToString());
}
else
{
logContext.LogLine
("LoadAssembly: " + e.Message);
}
}
throw new InvalidOperationException
(String.Format
(S._("Installer_CouldNotLoadAssembly"),
filename), e);
}
}
}