本文整理匯總了C#中Mono.Cecil.AssemblyDefinition.Accept方法的典型用法代碼示例。如果您正苦於以下問題:C# AssemblyDefinition.Accept方法的具體用法?C# AssemblyDefinition.Accept怎麽用?C# AssemblyDefinition.Accept使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Mono.Cecil.AssemblyDefinition
的用法示例。
在下文中一共展示了AssemblyDefinition.Accept方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: GetAssembly
static AssemblyDefinition GetAssembly (ImageReader irv, bool manifestOnly)
{
StructureReader srv = new StructureReader (irv, manifestOnly);
AssemblyDefinition asm = new AssemblyDefinition (
new AssemblyNameDefinition (), srv);
asm.Accept (srv);
return asm;
}
示例2: WriteAssembly
static void WriteAssembly (AssemblyDefinition asm, BinaryWriter bw)
{
asm.Accept (new StructureWriter (asm, bw));
}
示例3: Link
public void Link ()
{
outputAssembly = AssemblyFactory.GetAssembly (Assemblies [0]);
mainModule = outputAssembly.MainModule;
if (mainModule.Name != MainModuleName) {
Console.Error.WriteLine ("Main module is not named \"" + MainModuleName + "\" in assembly " + outputAssembly.Name.FullName);
Environment.Exit (1);
}
mainType = mainModule.Types [MainTypeName];
if (mainType == null) {
Console.Error.WriteLine ("Main module does not contain type \"" + MainTypeName + "\" in assembly " + outputAssembly.Name.FullName);
Environment.Exit (1);
}
outputAssembly.Accept (new StructureMerger (this, outputAssembly, outputAssembly));
for (int i = 1; i < Assemblies.Count; i++) {
AssemblyDefinition asm = AssemblyFactory.GetAssembly (Assemblies [i]);
asm.Accept (new StructureMerger (this, outputAssembly, asm));
}
FixReflectionAfterMerge fix = new FixReflectionAfterMerge (this, outputAssembly, outputAssembly);
fix.Process ();
nativeLibraries.AddExternalMethods (this);
if (OutputIsExecutable) {
outputAssembly.Kind = AssemblyKind.Console;
outputAssembly.EntryPoint = InternalSymbols.EntryPoint;
} else {
outputAssembly.Kind = AssemblyKind.Dll;
}
AssemblyFactory.SaveAssembly (outputAssembly, OutputPath);
}