Assembly wir in Liste nicht angezeigt?

25/10/2007 - 15:50 von Michael Andreas | Report spam
Hi,

mit nachfolgendem Kommando erstelle ich eine
Assembly in nativem Code

"ngen Install MyAssembly.DLL"

Es wird kein Fehler gemeldet und mit

"ngen Display MyAssembly.DLL"

werden die Parameter angezeigt.

In der Assemblyliste wird diese Assembly nicht angezeigt.
Was mach ich falsch?

Danke Michael
 

Lesen sie die antworten

#1 Frank Dzaebel
25/10/2007 - 18:49 | Warnen spam
Hallo Michael,

mit nachfolgendem Kommando erstelle ich eine
Assembly in nativem Code ...
"ngen Install MyAssembly.DLL"
Es wird kein Fehler gemeldet und mit
"ngen Display MyAssembly.DLL"
werden die Parameter angezeigt.
In der Assemblyliste wird diese Assembly nicht angezeigt.
Was mach ich falsch?



Die Assembly ist dann normal im "Native Image Cache",
nicht im "Global Assembly Cache":

/*
[CLR Inside Out: Die Leistungsvorteile durch NGen -- MSDN Magazine,
May 2006]
http://msdn.microsoft.com/msdnmag/i...spx?loc=de

[Native Image Generator (Ngen.exe)]
http://msdn2.microsoft.com/de-de/library/6t9t5wcf(vs.80).aspx
*/

private void btnNgen_Click(object sender, EventArgs e)
{
string ngenPath = Environment.ExpandEnvironmentVariables(
@"%windir%\Microsoft.NET\Framework\v2.0.50727gen.exe");
Assembly asm = Assembly.GetExecutingAssembly();
string myAssembly = "\"" + asm.Location + "\"";
StartProcess(ngenPath+" install " + myAssembly);
StartProcess(ngenPath+" Display " + myAssembly);

string nativeImagesPath = Environment.ExpandEnvironmentVariables(
@"""%windir%\assembly\NativeImages_v2.0.50727_32""");
StartProcess("dir " + nativeImagesPath);
StartProcess("dir " + nativeImagesPath + "\\" +
asm.GetName().Name);
}

private void StartProcess(string parameter)
{
//string cmd = Environment.ExpandEnvironmentVariables("%comspec%");
Process p = Process.Start("cmd", "/K " + parameter);
p.WaitForExit();
}


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen