Forums Neueste Beiträge
 

MissingMethodException auf vereinzelten Rechnern,...

17/12/2008 - 15:13 von Kerem Gümrükcü | Report spam
Hallo,

ich habe da so eine Frage, die ich mir selber erst
mal nicht beantworten kann, oder erst mal konnte.

Auf vereinzelten Rechnern, bekomme ich die
Fehlermeldung "MissingMethodException" für
System.Drawing.SystemIcons.Shield.ToBitmap().
Laut der WINUSER.h in dem DDK/SDK ist der
IDI_SHIELD verfügbar ab:

#if(WINVER >= 0x0600)
#define IDI_SHIELD MAKEINTRESOURCE(32518)
#endif /* WINVER >= 0x0600 */

Das ist soweit klar und die Methode wird auch nur
aufgerufen, (mit try/catch/finally) wenn das OS >=Vista
ist. Allerdings klappt alles wunderbar und nur auf vereinzelten
(Windows XP meistens) Rechnern kommt diese Fehlermeldung
obwohl ich diese Methode NICHT aufrufe. Aber eine Funktion
muss aufgerufen werden, damit diese ja ausgeführt wird, daher
stehe ich in einem gewissen "Unbekannten", keine Ahnung was
das soll.

Die Methode wird NUR aufegrufen, wenn folgende Bedingung
gegeben ist:

if (ver.Major == 6 && ver.Minor == 0)

oder Version Major ist 6 und Minor >=0. Also warum
bekomme ich diese Meldung für eine Methode auf
einem Windows XP System, die nicht aufgerufen wird.
also meines Erachtens nicht,...??? Dazwischen liegt
kein PInvoke/Interop, wobei da die Meldung ja auch
etwas anders aussehwn würde,...

Ich hatte auch nicht die Möglichkeit das auf einem
Windows XP System Live zu sehen, da die Meldung
von Benutzern kam, auf deren Rechner Ich "noch"
keinen Zugriff hatte,...

Ist es möglich, das Windows XP, aus welchem Grund
auch immer 6.0 oder größer als Version zurückgeben
kann? Die Frage ist grotesk, aber wer schon ewig Code
schreibt, der ist auf alles gefasst,...

Aber es kann auch ein Implementierungsfehler sein,
wobei ich sagen muss, das es nicht so aussieht, denn
auf einigen Windows XP kommt das nicht, auf anderen
schon. Diese haben tlw. unterschiedliche Updates auf
dem System, aber alle mind. das .NET 2.0 (im schimmsten
Fall ohne SP für .NET 2.0). Ich glaube, das liegt auch an diesen
fehlenden SPs bzw. irgendeinem Update, aber der Zusammen-
hang erschliesst sich mir nicht, da ich ja auch nicht genau sehen
kann, wie die Rechner bestückt sind,...

Hat jemand eine Idee,...es betrifft nur vereinzelte
Windows XP, kein Windows 2000, kein Vista, nur
XP!

Grüße

Kerem

Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.pro-it-education.de/soft...iceremover
Latest Open-Source Projects: http://entwicklung.junetz.de
"This reply is provided as is, without warranty express or implied."
 

Lesen sie die antworten

#1 Frank Dzaebel
17/12/2008 - 20:08 | Warnen spam
Hallo Kerem,

Auf vereinzelten Rechnern, bekomme ich die
Fehlermeldung "MissingMethodException" für
System.Drawing.SystemIcons.Shield.ToBitmap().



Ist ja nur in: 3.5 SP1, 3.0 SP1, 2.0 SP1 unterstützt:

[SystemIcons.Shield-Eigenschaft (System.Drawing)]
http://msdn.microsoft.com/de-de/lib...hield.aspx

Haben denn definitiv alle das SP1 installiert?
Immerhin sagst Du ja:
"... im schimmsten Fall ohne SP für .NET 2.0 ...".
Daran wird es liegen.
BTW: das Shield-Icon funktioniert natürlich
auch auf Windows XP.


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

Ähnliche fragen