Du schreibst das ziemlich oft.
Aber genau darum geht es bei der Entwicklung von Software und dem Programmieren an und für sich.
Man löst komplizierte Probleme. Die Lösungen bilden das manchmal ab.
Wenn man nicht gewillt ist, sich darauf einzulassen, hat man vielleicht den falschen Job bzw. ein unpassendes Hobby gewählt.
Wobei hier der Lösungsvorschlag von Dalei ziemlich trivial ist und auf ein paar Zeilen in einer kleinen Klasse zu erschlagen ist.
Du iterierst von A bis Z die Laufwerkbuchstaben.
Die Laufwerke, die per GetDriveType() Funktion ein DRIVE_REMOTE zurückliefen, merkst du dir in einem Container.
Es bietet sich TDictionary<string, string> an. Wobei der Key der
UNC-Pfad ist und Value dann der Laufwerksbuchstabe.
Wenn du dann im weiteren Programverlauf ein
UNC-Pfad bekommst, kannst du dein Dictionary einfach nach dem Laufwerksbuchstaben fragen.