Seite 1 von 3
Verknüpfung wird nicht gefunden, kein Zugriff möglich [Gelöst]
Verfasst: 01.06.2024 16:49
von OlderCoder
Hallo miteinander,
ich möchte eine Programmverknüpfung kopieren.
Eigentlich eine ganz einfache Sache. Dachte ich jedenfalls.
Aber völlig egal, was ich versuche, die Datei wird nicht gefunden.
liefert 0 als gescheiterten Kopierversuch. Und
ergibt -1 für Datei nicht gefunden.
Die Datei existiert aber. Und mit einer Textdatei funktioniert es problemlos.
Ich habe auch verschiedene Varianten versucht mit verschiedenen Pfaden, Ordnern (C:\ habe ich hier nur zwecks Vereinfachung gewählt)....habe PureBasic als Administrator gestartet, verschiedene Namen verwendet, die Endung groß geschrieben, weggelassen...was man halt so versucht, wenn man keine Ahnung hat.
Wie funktioniert das mit Verknüpfungen? Die Endung .lnk sollte doch eigentlich korrekt sein, oder?
Leider finde ich im ganzen Internet auch nach langen Suchen bisher keine Antwort auf dieses Problem, was ich nicht verstehe.
Falls sich übrigens einer wundern sollte, warum ich auch noch nach einigen Jahren immer noch solche Anfänger-Fragen stelle - ich programmiere extrem selten. Ein Anfänger werde ich wohl immer bleiben.
Es wäre schön, wenn mir jemand helfen könnte.
Edit: Inzwischen ist das Problem zumindest oberflächlich gelöst. Und hier
https://www.purebasic.fr/german/viewtop ... 39#p366139 und in den Posts davor kann man die "Lösung" finden. Das Problem war nur eine Zeit lang vorhanden, und dann plötzlich (bis auf weiteres?) wieder verschwunden.
Gruß OlderCoder
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 17:31
von tft
Um nach C zu kopieren, benötigst du unter W11 Admin Rechte. Alleine schon das einfach Kopieren, mit dem Explorer, wird eine solche Anforderung auslösen (W11). PureBasic hat auch eine Einstellung zum Thema Adminrechte. Das ist bei den Compiler-Einstellungen. Benutze eine externe SSD oder einen Stick für deine Experimente. Und ich glaube !!! Kein Wissen. Mann muss auch im Ziel den vollen Pfad angeben. Ansonsten wird es wahrscheinlich an dem Ort landen. Wo das Programm gestartet wurde. Experimentiere etwas rum.
Gruss TFT

Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 17:40
von OlderCoder
Das widerspricht aber der Tatsache, dass test.txt anstelle von test.lnk funktioniert, wie ich oben geschrieben habe.
Außerdem hatte ich auch andere Laufwerke außer C: vergeblich versucht.
Ich habe aber der Vollständigkeit halber trotzdem bei Administratormodus anfordern einen Haken gesetzt.
Gebracht hat es wie erwartet nichts.
Ich habe im übrigen Windows 10, aber das dürfte keinen Unterschied machen.
Das Problem hat direkt mit der Verknüpfung zu tun. test.lnk funktioniert nicht.
Wie kann ich in PureBasic auf eine Verknüpfung zugreifen?
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 18:06
von tft
Ja. LNK Dateien lassen sich scheinbar nicht ohne Adminrechte auf C kopieren. Das kann daran liegen. Das die Dinger durchaus auch gefährlich sein können. LinkWürmer, Malware etc.
Ich habe das jetzt mal ausprobiert. Ergebnis: geht nicht. Was auch immer du mit diesen Link Dateien machen möchtest. Du musst die was anderes ausdenken.
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 18:09
von tft
Ich benutze ChatGPT als Assistent beim Programmieren. Ich habe das Teil mal gefragt. Das war die Antwort.
Das Kopieren von LNK-Dateien (Verknüpfungsdateien) auf bestimmte Bereiche des Laufwerks C oder andere Orte kann durch Berechtigungseinstellungen und Sicherheitsfunktionen von Windows eingeschränkt sein. Hier sind einige häufige Gründe und mögliche Lösungen:
1. **Berechtigungen**:
- **Administratorrechte**: Manche Verzeichnisse auf dem Laufwerk C, wie das Stammverzeichnis (C:\) oder bestimmte Systemordner, erfordern Administratorrechte zum Kopieren oder Ändern von Dateien. Um eine LNK-Datei zu kopieren, können Sie versuchen, den Datei-Explorer als Administrator zu starten:
- Klicken Sie mit der rechten Maustaste auf das Datei-Explorer-Symbol und wählen Sie „Als Administrator ausführen“.
- **Ordnerberechtigungen**: Stellen Sie sicher, dass Ihr Benutzerkonto die notwendigen Berechtigungen hat, um in das Zielverzeichnis zu schreiben. Sie können die Berechtigungen eines Ordners überprüfen, indem Sie mit der rechten Maustaste auf den Ordner klicken, „Eigenschaften“ auswählen, dann zur Registerkarte „Sicherheit“ gehen und dort die Berechtigungen überprüfen und ggf. anpassen.
2. **Benutzungssteuerung (UAC)**:
- Die Benutzerkontensteuerung (User Account Control, UAC) in Windows kann das Kopieren von Dateien in bestimmte Verzeichnisse verhindern, um das System vor unerwünschten Änderungen zu schützen. Eine Erhöhung der Benutzerrechte (wie oben beschrieben) kann helfen, diese Einschränkungen zu umgehen.
3. **Antivirensoftware**:
- Einige Antivirensoftwareprogramme oder Sicherheitstools können das Kopieren von LNK-Dateien blockieren, um das System vor potenziellen Bedrohungen zu schützen. Überprüfen Sie die Einstellungen Ihrer Antivirensoftware und stellen Sie sicher, dass keine Regeln vorhanden sind, die das Kopieren von Verknüpfungsdateien blockieren.
4. **Geschützte Systemverzeichnisse**:
- Windows schützt bestimmte Verzeichnisse und Dateien vor Änderungen, um die Integrität des Systems zu bewahren. Das Kopieren von Dateien in diese geschützten Bereiche kann eingeschränkt oder blockiert sein. Zu diesen geschützten Bereichen gehören z.B. C:\Windows und C:\Program Files.
### Lösungen
1. **Kopieren als Administrator**:
- Versuchen Sie, die Datei als Administrator zu kopieren. Öffnen Sie den Datei-Explorer als Administrator (wie oben beschrieben) und führen Sie die Kopieraktion erneut durch.
2. **Berechtigungen anpassen**:
- Überprüfen und ändern Sie gegebenenfalls die Berechtigungen des Zielordners:
- Rechtsklick auf den Zielordner > Eigenschaften > Sicherheit > Bearbeiten > Ihr Benutzerkonto auswählen > „Vollzugriff“ aktivieren > Änderungen übernehmen.
3. **Antivirensoftware-Einstellungen überprüfen**:
- Stellen Sie sicher, dass Ihre Antivirensoftware das Kopieren von LNK-Dateien nicht blockiert. Sie können dies vorübergehend deaktivieren, um zu überprüfen, ob dies das Problem löst.
4. **UAC-Einstellungen anpassen**:
- Sie können die UAC-Einstellungen vorübergehend herabsetzen, um zu überprüfen, ob dies das Problem löst:
- Gehen Sie zu „Systemsteuerung“ > „Benutzerkonten“ > „Einstellungen der Benutzerkontensteuerung ändern“ > Schieben Sie den Regler auf eine niedrigere Einstellung > OK.
Bitte beachten Sie, dass das Ändern von UAC-Einstellungen oder das Deaktivieren von Sicherheitssoftware Risiken mit sich bringt. Führen Sie diese Änderungen nur vorübergehend durch und setzen Sie die ursprünglichen Einstellungen nach dem Kopieren der Datei wieder zurück.
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 18:22
von OlderCoder
Vielen Dank für Deine Mühe. ChatGPT habe ich vor kurzem erstmalig entdeckt. Erstaunlich, was damit möglich ist.
Filesize liest nur. Geschrieben wird dadurch überhaupt nichts. Und auch hier wird die Verknüpfung nicht gefunden. So als würde irgendetwas mit der Syntax nicht stimmen. Oder greift sogar beim Lesen schon die Frage der Zugriffsrechte? Kann ich mir nicht vorstellen.
Alle Tipps von ChatGPT beziehen sich auf das Schreiben.
Ich kann mir nicht vorstellen, dass es keinen Weg geben soll, Verknüpfungen mit PureBasic zu kopieren.
Und das mit den kopierten Verknüpfungen ist bereits eine (letzte?) Alternative zu anderen Lösungswegen meines eigentlichen Problems. Wenn das nicht klappt, ist die Sache sowieso vom Tisch.
Eigentlich wollte ich (und auch das war schon eine Alternative.....) Verknüpfungen mittels RunProgram starten. Aber das ist leider nicht möglich. Das wär eine feine Sache gewesen.....da in Verknüpfungen schon eine Menge an Möglichkeiten steckt für den Start verschiedenster Programme und Spiele, die man nur mit größerem Aufwand komplett ersetzen kann, da es viele Sonderfälle gibt.
Und so wollte ich mit der Verknüpfungskopiererei mittels eines simulierten Doppelklicks aus PureBasic heraus die Verknüpfungen starten (jaja, ich weiß ... von hinten durch die Brust ins Auge, wie man sagt oder so....aber es hätte garantiert funktioniert und wär besonders transparent gewesen, was ich mag.)
Parallel dazu hatte ich angefangen .bat-Dateien (für Steam, und Ubisoft-Spiele, da funktioniert das) und kleine PB-Exes (für Epic-Spiele u.a.) anzulegen und diese dann per PB-Programm zu starten, aber der Aufwand ist groß. Und die Verknüpfungen sind schon vorhanden und leicht händelbar.
Ich hatte früher mal eine Komplettlösung mit PureBasic zu diesem Zweck programmiert. Aber der Aufwand war mir einfach viel zu groß geworden und hat mich genervt.
Es geht letztlich um mehrere hundert Programme und Spiele. Und da wäre die Verwendung von Verknüpfungen ziemlich bequem.
Ich wollte diese Hintergrundgeschichte eigentlich nicht erwähnen. Aber da es irgendwie auch wieder nicht funktioniert....
Gruß OlderCoder
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 19:15
von OlderCoder
Die Rechteeinstellungen einer Textdatei und einer Verknüpfung scheinen auch die gleichen zu sein. Ich habe kurz mal in den Eigenschaften/Sicherheit nachgeschaut.
Ich werde das Gefühl nicht los, dass das Problem woanders zu suchen ist.
PureBasic sollte doch wenigstens lesend auf die Verknüpfung zugreifen können!
Ich hatte diesbezüglich nach einer existierenden Lösung gesucht, aber keine gefunden. Da muss es doch aber etwas geben, oder?
Immer geht es nur um das Erstellen von Verknüpfungen.
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 19:33
von OlderCoder
Ich habe das Problem lösen können.
Durch ein Programm aus der Hilfe, das einen Ordnerinhalt darstellt, habe ich herausgefunden, dass die Dateiendung einer Verknüpfung nicht .lnk, sondern .url ist. Zumindest in PureBasic.
Mit dieser Endung ist das Kopieren der Verknüpfung gar kein Problem. Auch nicht im Laufwerk C.
Mit Rechten hat das offensichtlich überhaupt nichts zu tun. Es war, wie ich schon überlegt hatte, tatsächlich ein Syntaxproblem.
Soviel Zeit investiert wegen so einer Kleinigkeit.
Jetzt hätte mich tatsächlich noch interessiert, mit welchem Input Du, tft, ChatGPT gefüttert hattest. Er hat das jedenfalls auch nicht gewusst. PureBasic hat vermutlich keine Rolle bei der Anfrage gespielt. In Windows wird .url nur für Internet-Verknüpfungen verwendet. In PureBasic für jede Art von Verknüpfung, wie es aussieht.
(Weiteres Vorgehen: aus Thumbnailmenü Spiel/Programm per Klick auswählen. Name aus Feld entnehmen, Verknüpfung in einen leeren Ordner kopieren, diesen maximiert öffnen und per simulierten Doppelklick Programm starten. Verknüpfung wieder löschen, Ordner schließen. Fertig. So mein Plan.Wenn es denn nicht anders einfach geht, dann eben so. Damit lässt sich jedenfalls ein viel schönerer und komfortablerer Zugang zur Programm- und Spielesammlung realisieren als nur über den Windows-Explorer. Wenn auch mit einem Schönheitsfehler, da kurz der Ordner zu sehen ist.)
Thema erledigt.
Gruß OlderCoder
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 22:54
von tft
Also ich freue mich darüber, dass du das Problem selber ermittelt hast. Mach doch am ersten Post einen Link zu deinem Letzten und ändere den Namen der Überschrift in [Gelöst]...... Das würde anderen beim Suchen sicher helfen.
Gruss TFT
Re: Verknüpfung wird nicht gefunden, kein Zugriff möglich
Verfasst: 01.06.2024 23:10
von OlderCoder
Das hätte ich schon getan, wenn ich eine Möglichkeit dafür gefunden hätte. Also gibt es eine. Ich suche nochmal (Edit: Ok, das war einfach, ich hatte nur schlampig gesucht). Und dann bräuchte ich noch eine Möglichkeit, einzelne Posts zu verlinken. Gab es da nicht mal irgendwo eine Möglichkeit mit # oder so?
Danke.
Gruß OlderCoder