Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

  • »Spiele Programmierer« ist der Autor dieses Themas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

1

07.04.2012, 13:02

Windows - relative Verknüpfungen

Ich bin momentan auf der Suche nach einer Möglichkeit relative verknüpfungen in Windows zu erstellen.
Der ganz einfache Weg im Verknüpfungsfenster "..\bla\bla\bla.exe" einzugeben, funktioniert bedauerlicherweiße nicht.
Ich habe auch schon in Google gesucht, aber nichts gefunden.
Was ich schon probiert habe:
  1. *.lnk Datei (Unterstützt anscheinend keine relativen Links)
  2. *.url Datei (Hat nicht funktioniert, keine Ahnung warum)
  3. *.bat Datei (Zusätzliches scharzes Konsolenfenster im Hintergrund; Kein Icon möglich)
  4. *.vbs Datei (Hat nicht funktioniert, keine Ahnung warum; Kein Icon möglich)

Das ganze ist zur Übersicht einer portablen Programmsammlung auf einen USB-Stick\Festplatte gedacht. Dort hätte ich sehr gerne übersichtliche Verknüpfungen, die auch auf jeden Computer funktionieren, egal wo sich der Ordner befindet.
Ich muss sagen, dass ich sehr schockiert bin, das sowas simples wie relative Verknüpfungen unter Windows quasi unmöglich ist. :(

Ich weiß nicht, aber vielleicht habt ihr ja einen Geheimtipp, wie sowas geht. ^^

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

07.04.2012, 13:57

Wenn dich das schwarze Fenster bei Lösung Nr. 3 stört:
Download: nowindow.exe

Ansonsten schreib dir doch einen kleinen "EXE-Macher", der dir auf Kommando EXE-Dateien mit frei wählbarem Icon generiert, die nichts weiter tun als ein bestimmtes Programm über eine relative Pfadangabe zu starten.

Das ist gar nicht so schwer wie es sich anhört.
Programmiere dazu einfach eine Vorlage, die ein Platzhalter-Icon enthält und einen genügend langen String mit dem auszuführenden Kommando.
Später kopierst du diese EXE einfach und ersetzt darin das Icon und den String (binär).

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

3

07.04.2012, 14:13

Ich bin mir nicht sicher und hab's auch nicht ausprobiert, aber evtl. geht's über einen Symlink: http://en.wikipedia.org/wiki/NTFS_symbolic_link

Allerdings würde ich auch eher eine Lösung anstreben die ohne solche Hacks auskommt ;)

  • »Spiele Programmierer« ist der Autor dieses Themas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

4

07.04.2012, 15:07

Zitat

Wenn dich das schwarze Fenster bei Lösung Nr. 3 stört

Ja das stört.
Für jede mit der Verknüpfung geöffneten Anwendung, hab ich so ein überaus nerviges und sinnloses Fenster im Hintergrund.

Leider denk ich aber nicht das die Anwendung hilft. Schliesslich muss ja irgendwas wiederrum diese Anwendung öffnen.

Zitat

Ansonsten schreib dir doch einen kleinen "EXE-Macher"

Hm. Ich werds mal versuchen.
Danke für den Tipp.
Werd ich aber mit dem gcc machen müssen, schliesslich sollen die "Verknüpfungen" maximal kompatibel sein. ;)

Zitat

geht's über einen Symlink

Auf den USB-Datenträger hab ich Fat32. Daher wohl eher nicht.

Oberon

Treue Seele

Beiträge: 181

Wohnort: Österreich

Beruf: Student

  • Private Nachricht senden

5

07.04.2012, 16:16

Du kannst in der bat-Datei dein Programm über

Quellcode

1
start "" "pfad\zu deinem\programm.exe"

starten, dann verschwindet das Konsolen-Fenster gleich wieder.

  • »Spiele Programmierer« ist der Autor dieses Themas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

6

07.04.2012, 16:56

Jetzt weiß ich, weshalb das bei mir mit Startbefehl immer nicht geklappt hat.
Die vorderen Anführungszeichen hatte ich nicht.
Besten Dank! :)
Wahrscheinlich mach ichs jetzt erstmal so. ^^

Faule Socke

Community-Fossil

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

7

10.04.2012, 22:50

Windows kann auch Hardlinks. Die können nicht über Dateisystemgrenzen gehen und sind somit das, was du möchtest, denke ich.

  • »Spiele Programmierer« ist der Autor dieses Themas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

8

13.04.2012, 00:44

Ne, Hardlinks taugen da nichts.
Da sie zum einen nicht relativ sind und zum anderen auch nur auf NTFS funktionieren.

Faule Socke

Community-Fossil

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

9

02.05.2012, 13:40

So wie ich das verstanden habe, will er auch gar keine relative Verknüpfung (auch wenn er das schreibt). Er will eine Verknüpfung, die er auf der selben Platte ablegt wie das Ziel und die immer auf die richtige Platte zeigt, also nicht vom Laufwerksbuchstaben abhängig ist (der ja sehr stark variiert von PC zu PC). Und da sind Hardlinks doch genau das richtige (so wie ich sie kenne jedenfalls).

Einzige Voraussetzung ist wie du gesagt hast, dass er seine externe Festplatte mit NTFS formatiert hat (was ich unbedingt empfehle).

Socke

  • »Spiele Programmierer« ist der Autor dieses Themas

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

10

02.05.2012, 15:54

Zitat

Er will eine Verknüpfung, die er auf der selben Platte ablegt wie das Ziel und die immer auf die richtige Platte zeigt, also nicht vom Laufwerksbuchstaben abhängig ist

Naja das sind ja relative Verknüpfungen.
Um es etwas zu verallgemeinern: Ich will Verknüpfungen, die unabhänig vom übergeordneten Ordner auf Dateien in Unterordnern verweisen.

Zitat

externe Festplatte mit NTFS formatiert

Nicht externe Festplatte
Sondern USB-Stick (und meine interne im Computer).



Die Fragestellung ist zwar schon etwas her, aber sollte jemand doch eine gute Lösung kennen bin ich weiterhin dankbar.
Momentan mach ich das jetzt mit Bat-Dateien. Wegen dem fehlendem Icon ist das aber ein wenig unübersichtlich. ^^

Werbeanzeige

Ähnliche Themen