AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) C# USB-Stick "sicher entfernen" (unmount)...
Thema durchsuchen
Ansicht
Themen-Optionen

USB-Stick "sicher entfernen" (unmount)...

Ein Thema von Markus · begonnen am 31. Aug 2006 · letzter Beitrag vom 2. Sep 2006
Antwort Antwort
Markus
(Gast)

n/a Beiträge
 
#1

USB-Stick "sicher entfernen" (unmount)...

  Alt 31. Aug 2006, 14:31
Hallo,

ich hätte eine Frage: und zwar wie kann ich anhand eines Laufwerksbuchstabens einen USB-Stick deakvieren (also wie durch einen Klick auf "Hardware sicher entfernen")? Ich lese schon stundenlang in der Win32-Api (CM_Request_Device_Eject, ...), aber ich komme einfach nicht weiter. Mein momentanes Problem ist, wie ich anhand des Laufwerksbuchstabens die devInst des Stick herausbekommen kann.

Kennt sich da jemand aus?
  Mit Zitat antworten Zitat
Benutzerbild von CK_CK
CK_CK

Registriert seit: 31. Aug 2005
Ort: Dortmund, Germany
388 Beiträge
 
Delphi 2006 Enterprise
 
#2

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 16:59
*PUSH*

Ich bin auch auf der Suche nach einem solchen Code...

(zwar für Win32Delphi, aber ein Ansatz wäre auch schon gut )

Viele Grüße,
Chris
Chris
» «
Mehr von mir (Programme, etc.): http://www.kroegerama.de
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#3

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 17:33
Eine A9-Suche führt zu diesem Artikel. Ist das vielleicht schon, was ihr beide sucht?
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Markus
(Gast)

n/a Beiträge
 
#4

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 17:44
So hab ichs prinzipiell inzwischen gemacht, aber ich kann euch sagen, es ist die HÖLLE! Es funkioniert noch nicht komplett (hab noch ein paar Probleme mit den Instance-IDs), aber ich habs fast fertig.
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#5

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 17:47
Dass es die Hölle ist, kann ich bestätigen, ich habe mal ein Programm geschrieben, dass nichts weiter können sollte, als die serielle Schnittstelle des Mainboards zu deinstallieren und stattdessen 8 zusätzliche serielle Schnittstellen zu installieren... Natürlich keine schönen PnP-Dinger, sondern ein PC104-Bus

Was Instance-ID-Probleme angeht, mit WMI ließen sich solche strukturellen Dinge relativ angenehm auslesen.
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Markus
(Gast)

n/a Beiträge
 
#6

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 21:00
Was an diesen dummen devInsts das Problem ist, ist, dass sie von anderen Funktionen abhängen. Z.B. die Funktion CM_Get_Parent gibt für gleich Eingabewerte immer verschiedene IDs aus, da man vorher mittels anderer Funktionen anscheinend Parameter setzen muss. Leider ist das nicht richtig dokumentiert im MSDN...
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 1. Sep 2006, 21:45
Hi,

schau mal hier: http://www.codeproject.com/useritems/usbeject.asp
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Markus
(Gast)

n/a Beiträge
 
#8

Re: USB-Stick "sicher entfernen" (unmount)...

  Alt 2. Sep 2006, 09:01
An das hab ich mich gehalten, aber versuch mal, den Code nachzuvollziehen!! Das ist genauso schlimm! V.a. werden da extrem vielen Sachen mittels Properties gemacht (also mit set und get), und das macht es extrem unübersichtlich!

Ach ja, und problematisch sind natürlich auch die Pointer, denn damit kann man in C# nicht so ohne weiteres arbeiten (ich arbeite zwar schon unmanaged und unsafe), aber z.B. einen Pointer eines Typs erstellen, ohne jedoch den Typ selbst zu erstellen is etwas umständlich (geht aber mittels Marshal.AllocHSpace() )
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:36 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