Avatar billede marduk666 Nybegynder
27. september 2003 - 14:45 Der er 1 kommentar og
1 løsning

Navn på drev

Hvordan henter jeg navnet på f.eks. mit A: drev? e.g. 3½"-diskette.
Avatar billede marduk666 Nybegynder
30. september 2003 - 17:45 #1
Øv :/
Avatar billede arne_v Ekspert
30. september 2003 - 19:35 #2
Du vil muligvis finde følgende kode interessant:

using System;
using System.Text;
using System.Runtime.InteropServices;

public class MainClass
{
    [DllImport("kernel32.dll")]
    public static extern int GetDriveType(string driveLetter);
    [DllImport("kernel32.dll")]
    public static extern int GetVolumeInformation(string strPathName,
                                                  StringBuilder strVolumeNameBuffer,
                                                  int lngVolumeNameSize,
                                                  int lngVolumeSerialNumber,
                                                  int lngMaximumComponentLength,
                                                  int lngFileSystemFlags,
                                                  StringBuilder strFileSystemNameBuffer,
                                                  int lngFileSystemNameSize);
   
    public static string GetDiskType(string drive) {
        switch(GetDriveType(drive)) {
            case 2:
                return "floppy";
            case 3:
                return "harddisk";
            case 4:
                return "netværksdrev";
            case 5:
                return "CD";
            default:
                return "unknown";
        }
    }
    public static string GetDiskLabel(string drive)
    {
       
        StringBuilder volnam = new StringBuilder(256);
        StringBuilder fsnam = new StringBuilder(256);
        int serial = 0;
        int maxfnlen = 0;
        int flags = 0;
        GetVolumeInformation(drive + "\\",
                            volnam,
                            256,
                            serial,
                            maxfnlen,
                            flags,
                            fsnam,
                            256);
        return volnam.ToString();
    }
    public static void test(string drive)
    {
        Console.WriteLine(drive + " " + GetDiskType(drive) + " " + GetDiskLabel(drive));
    }
    public static void Main(string[] args)
    {
        test("A:");
        test("C:");
        test("D:");
        test("E:");
        test("F:");
    }
}

output på min PC:

A: floppy
C: harddisk ARNEPC2_C
D: harddisk ARNEPC2_D
E: CD
F: CD
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester