2010-09-29 4 views
5

Wenn ich einen * nix Symlink erstellen möchte, rufe ich symlink();, wenn ich ein Skript auf Windows ausführen und ich eine Verknüpfung erstellen möchte, würde ich Win32::Shortcut verwenden.Kann ein Perl-Skript, das auf einer Unix/Linux-Plattform ausgeführt wird, Windows-Verknüpfungen erstellen?

Aber was, wenn ich eine Windows-Verknüpfung erstellen möchte, wenn Sie ein Skript von einem * nix-Rechner ausführen?

Ich greife auf eine SMB-Freigabe auf einem Windows Server 2003-Computer von meinem * Nix-Computer.

+0

Hängt aber Sie das Windows von Ihrer * nix-Maschine zugreifen. – Reactormonk

+0

Ich greife von einem * nix-Computer aus auf eine SMB-Freigabe auf einem Windows Server 2003-Computer zu. (Hinzugefügt zu der Frage) – Powertieke

Antwort

7

Nun, ich weiß nicht, ob Samba eine API dafür bereitstellt. Auf der anderen Seite sind Windows-Verknüpfungen nur .lnk Dateien in einem bestimmten Format.

+0

Also sollte ich in der Lage sein, eine Funktion zu schreiben, die diesen bestimmten Dateityp erzeugen könnte? Gibt es Tutorials zum Schreiben von Binärdateien? – Powertieke

+0

@ Powertieke: In der Theorie, ja sollten Sie in der Lage sein, eine Funktion zu schreiben, um eine solche Datei zu erstellen. –

1

Es ist eine lange Zeit seit der ersten Frage, aber ich hatte das gleiche Problem und eine Lösung gefunden.

Ich schrieb eine Anwendung, deren Ziel ist es jedem zu ermöglichen, INK-Dateien von jedem Betriebssystem zu erstellen. Ich fing an, es in bash zu schreiben und dann konvertierte ich es in C (die Quellen sind verfügbar).

Es ist immer noch frisch, so außer mir niemand noch nicht getestet, aber Sie können hier einen Blick:
    http://www.mamachine.org/mslink/index.en.html