AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi DeleteVolumeMountPoint funktioniert nicht
Thema durchsuchen
Ansicht
Themen-Optionen

DeleteVolumeMountPoint funktioniert nicht

Ein Thema von himitsu · begonnen am 31. Jul 2006 · letzter Beitrag vom 1. Aug 2006
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.202 Beiträge
 
Delphi 12 Athens
 
#1

DeleteVolumeMountPoint funktioniert nicht

  Alt 31. Jul 2006, 13:27
Die Definition stimmt:
Delphi-Quellcode:
Function SetVolumeMountPointW(VolumeMountPoint, VolumeName: PWideChar): LongBool;
  External 'kernel32.dllName 'SetVolumeMountPointW';
Function DeleteVolumeMountPointW(VolumeMountPoint: PWideChar): LongBool;
  External 'kernel32.dllName 'DeleteVolumeMountPointW';
Aufrufen tu ich es so:
Delphi-Quellcode:
If DeleteVolumeMountPointW(PWideChar(GetText(D.ComboBox4))) Then
  Button1.Click Else ShowLastError;
Was in meinem Testfall dem entspricht:
DeleteVolumeMountPoint('Y:\'#0); Aber es kommt immer nur:
Zitat:
---------------------------
Fehler
---------------------------
Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch.

---------------------------
OK
---------------------------
Hab schon alles Mögliche versucht,
Zitat:
'Y:\'
'Y:'
'\\.\Y:\'
'\\.\Y:'
obwohl die Erste Angabe schon stimmen sollte.
Zitat:
[in] Pointer to a string that indicates the volume mount point to be unmounted. This may be a root directory (X:\, in which case the DOS drive letter assignment is removed) or a directory on a volume (X:\mnt\). A trailing backslash is required.
Im PSDK zwar sowas
Zitat:
To compile an application that uses this function, define the _WIN32_WINNT macro as 0x0500 or later. For more information, see Using the SDK Headers.
aber wie soll ich das in Delphi machen, wenn überhaupt nötig?


System: WinXP SP2



Die beiden Funktionen, wie sie sich hinter den Buttons "Add" und "Delete" bei den "Locical Drives" in http://www.delphipraxis.net/internal...=587272#587272 (siehe Anhang) verstecken:
Delphi-Quellcode:
Procedure TForm1.Button4Click(Sender: TObject);
  Var Di: Integer;
    D: TVolumeMountPoint_AddDialog;

  Begin
    Di := TreeView2.Selected.Index;
    D := TVolumeMountPoint_AddDialog.Create(Self);
    Try
      SetText(D.Label2, LogicalDrives[Di].VolumeName);
      If D.ShowModal = mrOK Then
        If SetVolumeMountPointW(PWideChar(GetText(D.Edit4)),
          PWideChar(LogicalDrives[Di].VolumeName + '\')) Then
          Button1.Click Else ShowLastError;
    Finally
      D.Free;
    End;
  End;

Procedure TForm1.Button5Click(Sender: TObject);
  Var Di, i: Integer;
    D: TVolumeMountPoint_DeleteDialog;
    S: WideString;

  Begin
    Di := TreeView2.Selected.Index;
    If LogicalDrives[Di].VolumePathNames = 'Then Exit;
    D := TVolumeMountPoint_DeleteDialog.Create(Self);
    Try
      SetText(D.Label2, LogicalDrives[Di].VolumeName);
      S := LogicalDrives[Di].VolumePathNames;
      While S <> 'do Begin
        i := Pos(#9, S);
        If i = 0 Then i := Length(S) + 1;
        D.ComboBox4.Items.Add(Copy(S, 1, i - 1));
        Delete(S, 1, i);
      End;
      D.ComboBox4.ItemIndex := 0;
      If D.ShowModal = mrOK Then
        If DeleteVolumeMountPointW(PWideChar(GetText(D.ComboBox4))) Then
          Button1.Click Else ShowLastError;
    Finally
      D.Free;
    End;
  End;
Hab's natürlich auch schon in einogen Tests mit direkten Aufrufen, mit Sringconstanten, Stringvariablen und auch mit den AnsiVersionen versucht
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz