Code:
public string GetVolumeSerial(string strDriveLetter) { uint serNum = 0; uint maxCompLen = 0; StringBuilder VolLabel = new StringBuilder(256); // Label UInt32 VolFlags = new UInt32(); StringBuilder FSName = new StringBuilder(256); // File System Name strDriveLetter += "\\"; long Ret = GetVolumeInformation(strDriveLetter, VolLabel, (UInt32)VolLabel.Capacity, ref serNum, ref maxCompLen, ref VolFlags, FSName, (UInt32)FSName.Capacity); return Convert.ToString(serNum); }
Leider wird der Wert irgendwann zu groß, so das ich ihn gern convertieren möchte.
Er berechnet die VolumenSerienNummer einer Partition utner Windows.
Jetzt benötige ich folgende Umrechnung bevor der Wert 'returned' wird.
Code:
// convert if (serNum > 2147483648) serNum -= 4294967296;
Fehler 2 Der Typ "long" kann nicht implizit in "uint" konvertiert werden. Es ist bereits eine explizite Konvertierung vorhanden. (Möglicherweise fehlt eine Umwandlung.)
Jetzt stehe ich etwas auf dem Schlauch . Danke für eure Hilfe!
Comment