AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Freigegebene Festplatten eines PCs ermitteln
Thema durchsuchen
Ansicht
Themen-Optionen

Freigegebene Festplatten eines PCs ermitteln

Ein Thema von Salomon · begonnen am 6. Mai 2003 · letzter Beitrag vom 18. Jan 2021
Antwort Antwort
Benutzerbild von himitsu
himitsu

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

AW: Freigegebene Festplatten eines PCs ermitteln

  Alt 18. Jan 2021, 16:57
Ich frage mich auch, was "[Temporary]" sein kann, um damit mal zu testen.
Ich würde empfehlen den Hersteller zu fragen, oder Google und Co.
https://docs.microsoft.com/en-us/win...-netsharecheck
https://stackoverflow.com/questions/...type-temporary

Also ein Beispiel dafür wäre ein RAM-Drive, welches z.B. beim Neustart des Rechners den Inhalt vergessen hat.
Bzw. hier ein "temporärer" Share, wäre Einer, welcher beim Neustart weg ist. (ist nur jetzt da, bis zum Ende ... wurde also nicht "permanent" gespeichert)


Welchen Typ ein Share/Drive hat, das bestimmt der Treiber.
Es gibt auch Treiber, die einfach schlecht programmiert sind und falsche Eigenschaften liefern.




PACKED einfach einfach so weglassen, bzw. einfügen, das ist definitiv das falsche Vorgehen.

Ob das PACKED oder sonstwie ausgerichtet ist, dass steht in der Dokumentation, bzw. den Header-Files dieser API.
Im Delphi muß "einfach" nur das gleiche gemacht werden, wie es die Quelle vorschreibt.


Aber ja, grundsätzlich trifft es zu, dass die meisten Records der WinAPI nicht packed sind.
PACKED entspricht {$ALIGN 1}
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (18. Jan 2021 um 17:08 Uhr)
  Mit Zitat antworten Zitat
MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: Freigegebene Festplatten eines PCs ermitteln

  Alt 18. Jan 2021, 18:25
Danke für die Info zum STYPE_TEMPORARY
Ja, ist logisch... RAM-Disk.

Ich teste gerade Werte, damit ich z.B. diesen Drucker identifizieren und somit diesen ausschließen kann.
Habe mal direkt als DWORD shi2_type überprüft. Damit komme ich nicht weiter. Gleiche Werte

Ich habe mal das Ganze mit SHARE_INFO_502 probiert. Weil hier gibt es noch shi502_reserved.

Hier stehen die Infos drinnen. Also normale hinzugefügte Ordner haben hier den Wert 128. Ein Drucker den Wert 104. Dagegen ein hinzugefügter Ordner mit Kommentar wiederum 92. Da muss man wohl was ähnliches zusammenbauen wie die Funktion "ShareTypeToStr", damit man am Ende richtig unterscheiden kann. Ich versuche Google zu bemühen. Man weiß ja erst mal nicht was in "shi502_reserved" alles enthalten sein kann.
  Mit Zitat antworten Zitat
MicMic

Registriert seit: 26. Mai 2018
296 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#3

AW: Freigegebene Festplatten eines PCs ermitteln

  Alt 18. Jan 2021, 21:46
Mal zur Info:

Sogar der Explorer prüft auf das Dollarzeichen.
Also Microsoft selbst mach es nicht richtig (sieht zumindest so aus).

Also ein Ordner "hallo$" kann man ganz normal freigeben. NetShareEnum findet diesen auch aber der Explorer zeigt diesen nicht an. Also prüft Microsoft hier wohl auch auf das Dollarzeichen.

Auch Sources von Apple habe ich gefunden. Da wird auf "print$" geprüft. Das ist auch falsch. Wenn es nämlich kein Drucker freigegeben ist, dann kann man einen Ordner mit dem Namen "print$" auch ganz normal benutzen, für eine Freigabe. Nur die Programme werden dann falsch funktionieren.
  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 10:03 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