Laden...

Einbinden von Netzlaufwerk mit WNetAddConnection2

Erstellt von da_user vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.676 Views
D
da_user Themenstarter:in
94 Beiträge seit 2008
vor 5 Jahren
Einbinden von Netzlaufwerk mit WNetAddConnection2

Hi,

ich habe mal ein, zwei kurze Fragen zum verbinden von Netzlaufwerken mit "WNetAddConnection2", welches ich so implementeiren möchte: SO: Map network drive programmatically in C# on Windows 10. Zunächst finde ich die schonmal schöner als die klassische Methode über "net use", frage mich allerdings, ob es da nicht mittlerweile eine noch schönere, vielleicht in C# eingebaute Variante gibt?
Und dann natürlich die wichtigste Frage: blockiert die Variante von SO mein Programm, solange bis das Verbinden geglückt, bzw. fehlgeschlagen ist?
Denn nach dem Verbinden soll mein Programm natürlich was mit dem Netzlaufwerk anstellen, und entweder ich prüfe dann gleich nach der Ausführung der entsprechenden Methode, ob das Netzlaufwerk verbunden ist, was die weniger aufwendige Methode ist, oder ich muss halt alle x-ms prüfen und dann ein Event schmeißen.

Oder vielleicht hat ja jemand eine ganz andere Idee?

VG
da_user

16.835 Beiträge seit 2008
vor 5 Jahren

C# ist eine Sprache; kein Framework.
Daher wäre die Frage, ob es nicht in .NET eine Möglichkeit gibt.

.NET wiederum ist an vielen Stellen nur ein Wrapper der Win32 API.
Ergo; wenn es in .NET selbst keine Implementierung der jeweiligen Funktion gibst - sofern es dazu eine Win32 Funktion gibt, wovon ich ausgehe - kannst Du diese mit Hilfe des .NET Framework und PInvoke selbst implementieren.

D
da_user Themenstarter:in
94 Beiträge seit 2008
vor 5 Jahren

C# ist eine Sprache; kein Framework.
Daher wäre die Frage, ob es nicht in .NET eine Möglichkeit gibt.

Argh... meinte ich ja.

.NET wiederum ist an vielen Stellen nur ein Wrapper der Win32 API.
Ergo; wenn es in .NET selbst keine Implementierung der jeweiligen Funktion gibst - sofern es dazu eine Win32 Funktion gibt, wovon ich ausgehe - kannst Du diese mit Hilfe des .NET Framework und PInvoke selbst implementieren.

Das wäre genau das, was das der Code im Link macht.
Darum wäre natürlich meine erweitere Frage, ob der Code den Thread "blockiert". Ich also danach sofort prüfen kann, ob das Netzlaufwerk verbunden oder nichtverbunden ist. Oder ob ich nach starten der Methode regelmässig prüfen muss, ob das Netzlaufwerk den jetzt schon verbunden ist?

PS:
Somit passt also die (wohl von dir) geänderte Überschrift nicht.

16.835 Beiträge seit 2008
vor 5 Jahren

Oder ob ich nach starten der Methode regelmässig prüfen muss, ob das Netzlaufwerk den jetzt schon verbunden ist?

Wieso probierst Du es nicht aus? 😉
Ein Entwickler entwickelt Dinge. Deswegen heisst er Entwickler - und dazu gehört auch, dass man Dinge ausprobiert.
Ansonsten siehst Du im Quellcode, was der Quellcode macht - und in der Dokumentation von Win32 was die API macht.
Hilfe zur Selbsthilfe 😉 Das bekommst Du schon hin.

Somit passt also die (wohl von dir) geänderte Überschrift nicht.

Hab ich nicht; evtl ein anderer Mod. Habs neutraler formuliert.

2.207 Beiträge seit 2011
vor 5 Jahren

Somit passt also die (wohl von dir) geänderte Überschrift nicht.
Hab ich nicht; evtl ein anderer Mod. Habs neutraler formuliert.

Ich war das. Habs nach bestem Wissen und Gewissen editiert. Falls es eine treffendere Beschreibung gibt bitte einfach ändern. 😃

Gruss

Coffeebean

D
da_user Themenstarter:in
94 Beiträge seit 2008
vor 5 Jahren

Ein Entwickler entwickelt Dinge. Deswegen heisst er Entwickler - und dazu gehört auch, dass man Dinge ausprobiert.

Weils manchmal Dinge gibt, die beim ausprobieren funktionieren, im "produktiven" dann aber wiederrum nicht 😉

Aber ich werde es einfach ausprobieren.

Danke fürs nochmalige Titel editieren