GUI für mklink in Win 7

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
planer86
Beiträge: 2
Registriert: Do 1. Sep 2011, 22:30

GUI für mklink in Win 7

Beitrag von planer86 »

Hallo liebes Forum,

erstmal fange ich mit meiner Idee an:
Es gibt ja die möglichkeit seit Win Vista mit dem cmd Befehl mklink Hardlinks und Abzweigpunkte für Ordner zu erstellen.
Letzteres benutze ich häufiger und würde daher gerne eine GUI dafür schreiben.
Ich habe bereits dafür eine Batch geschrieben die auch funktioniert aber die halt logischerweise etwas trostlos aussieht.

Hier meine Vorgeschichte:
Ich habe das letze mal vor 5 Jahren Programmiert und da nur in meiner Ausbildung mit Delphi (ich bin komplett raus aus dem Programmieren) deswegen suchte ich etwas ähnliches für mein Projekt und bin deshalb zu Lazarus gekommen.

Nun meine Frage:
Für mklink brauche ich 3 Optionen um einen Abzweigpunkt zu erstellen

- Den Pfad zum Originalordner
- Das Ziel
- Den Namen des Abzweigpunktes

Nun wollte ich mit dem Pfad zum Originalordner anfangen den ich mit SelectDirectoryDialog auswähle und der dann in einem Memo erscheinen soll.
Nur da fängt es ja schon an wie kann ich denn Überhaupt den Ausgewählten Pfad in dem Memo anzeigen lassen und wie speichere ich diesen in einem String den ich dann an den cmd Befehl übergeben kann?
Ist es überhaupt generell machbar?
Ist dieses Projekt für Anfänger geeignet oder eher was für Profis?

Ich habe schon die Boardsuche bemüht aber nix finden können.

Vielen Dank für eure Hilfe.

MAC
Beiträge: 770
Registriert: Sa 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
CPU-Target: 32Bit

Re: GUI für mklink in Win 7

Beitrag von MAC »

Herzlich willkommen hier im Lazarusforum,

ich würde dir eigentlich erstmal empfehlen dich langsam "einzuarbeiten", also ein paar kleine Beispiele, Taschenrechner & Co. programmieren.

Aber nun gut.
Realisierbar müsste das ganze mit relativ Wenig aufwand sein.
Es ist auch, so wie es da jetzt steht relativ einfach gemacht, da die Componente TProcess dur viel arbeit abnimmt.

Code: Alles auswählen

if SelectDirectoryDialog1.Execute then // Gibt wahr zurück wenn man auf ok geklickt hat.
begin
// in SelectDirectoryDialog.FileName ist der Pfad den du ausgewählt hast.
// z.B: kannst du den folgendermaßen ausgeben:
Memo1.Lines.Clear; // löscht den inhalt
Memo1.Lines.Add(SelectDirectoryDialog); // fügt den Pfad hinzu.
// natürlich kannst du den auch erst in eine Variable speichern, oder einem Edit ausgeben...
end;
Weiterhin kannst du mit TProcess die Batch befehle starten, da kenn ich mich aber nicht so gut mit aus, ein bisschen googeln sollte helfen.

Code: Alles auswählen

Signatur := nil;

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: GUI für mklink in Win 7

Beitrag von mschnell »

Die Idee Links in besser bedienbaren Form anzubieten finde ich gut.

Man sollte es in am besten in die open source Version des "Total Commanders" einbauen: "Double Commander", die mit Lazarus gemacht ist.

Du brauchst aber kein externes Kommando aufrufen. es gibt dafür mit Sicherheit eine Windows API-Funktion.

-Michael

planer86
Beiträge: 2
Registriert: Do 1. Sep 2011, 22:30

Re: GUI für mklink in Win 7

Beitrag von planer86 »

Hallo MAC

Vielen Dank für deine Anleitung hat wunderbar funktioniert.
Jetzt muss ich mich nur noch ein bissl googlen wie TProcess funktioniert und hoffe das mein Programm bald fertig ist.

@mschnell

Das ist eine gute Idee aber ich glaub dafür bin ich noch nicht fit genug in Lazarus.
Aber wenn es denn mal irgendwann so ist werde ich das bestimmt machen.

Antworten