AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Windows-Bug mit bestimmter Netzlaufwerkskonstellation (*Herausforderung gesucht?*)
Thema durchsuchen
Ansicht
Themen-Optionen

Windows-Bug mit bestimmter Netzlaufwerkskonstellation (*Herausforderung gesucht?*)

Offene Frage von "CodeX"
Ein Thema von CodeX · begonnen am 17. Aug 2015 · letzter Beitrag vom 31. Aug 2015
 
CodeX

Registriert seit: 30. Okt 2004
475 Beiträge
 
Delphi 12 Athens
 
#19

AW: Windows-Bug mit bestimmter Netzlaufwerkskonstellation (*Herausforderung gesucht?*

  Alt 19. Aug 2015, 10:28
Ich habe bemerkt, dass die Versendung der DBT_DEVICEREMOVECOMPLETE Nachricht zumindest unvollständig sein dürfte. Keine Ahnung, ob das wirklich das Problem ist, aber ich würde das zumindest doch gerne in korrekter Form ausprobieren.

Ich habe das jetzt so versucht:
Delphi-Quellcode:
const
  DBT_DEVICEREMOVECOMPLETE = 32772;
var
  phdr: PDevBroadcastHdr; //Aus JvComputerInfoEx
begin
  phdr.dbch_size := SizeOf(DEV_BROADCAST_HDR);
  phdr.dbch_devicetype := DBT_DEVTYP_VOLUME;
  SendMessage(HWND_BROADCAST, WM_DEVICECHANGE, DBT_DEVICEREMOVECOMPLETE, INTEGER(@phdr));

//Auszug aus JvComputerInfoEx:
  {$EXTERNALSYM PDevBroadcastHdr}
  PDevBroadcastHdr = ^TDevBroadcastHdr;
  {$EXTERNALSYM DEV_BROADCAST_HDR}
  DEV_BROADCAST_HDR = packed record
    dbch_size: DWORD;
    dbch_devicetype: DWORD;
    dbch_reserved: DWORD;
  end;
  TDevBroadcastHdr = DEV_BROADCAST_HDR;
Aber das kann so nicht stimmen.

MSDN:
WM_DEVICECHANGE message
DBT_DEVICEREMOVECOMPLETE event
Hier steht:
Code:
lParam: A pointer to a structure identifying the device removed. The structure consists of an event-independent header, followed by event-dependent members that describe the device. To use this structure, treat the structure as a DEV_BROADCAST_HDR structure, then check its dbch_devicetype member to determine the device type.
Allerdings sehe ich in DEV_BROADCAST_HDR keine Möglichkeit, ein Laufwerk anzugeben.
Was übersehe ich?
Nur Delphi schafft es, einem ein Lächeln zu schenken, wenn man sich beim Schreiben von := vertippt und stattdessen ein :) erscheint.
  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 22:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz