Programm mit Kontexmenü auf Ordnern

Hallo,

ich möchte mir ein eigenes Cryptprogramm erstellen, welches meine Daten in DropBox verschlüsselt. Das ist eigentlich nicht so der hit. Aber:
Wie kann ich in meinem Programm welches später auf dem PC installiert werden soll einen Kontex auf einen Ordner oder Datei mit der rechten Maustaste bringen ähnlich wie es bei Winzip der Fall ist?

Ich bin kein Profi und sehe mich als Hobby-Programmierer.
Ich verfüge über Visual Studio 2008 / 2012 Prof, komme jedoch ehr aus der alten VB Schule und wenn man es genau nimmt aus Basic (C64).

Für Ansätze oder Beispiel-Projekte wäre ich Dankbar

Hallo,

leider habe ich dazu prinzipiell keine Ahnung, da ich das selbst noch nicht gemacht habe. Google mal nach „explorer kontextmenü eintrag hinzufügen .net“.
Dabei habe ich zum Beispiel gefunden:
http://www.vb-paradise.de/programmieren/hauptforum/3…

Gruß
Thomas

Hallo Nico,
ich seh zwar nicht viel Sinn darin, das Rad noch 100x neu zu erfinden, schließlich gibts Verschlüsselungssoftware á la Truecrypt wie Sand am Meer… aber trotzdem hier mein Tipp:

Dein Problem muss in 2 Schritten gelöst werden:

  1. Dein Programm muss übergebene Parameter auswerten.
    Wenn du dein Programm z.B. in der cmd-Console mit dem zu verarbeitenden Dateinamen als Parameter startest, muss es diesen Parameter verarbeiten. Das kannst du in vb.net mit dem command-object abfragen bzw. auswerten.

  2. Wenn das funktioniert, musst du einen Weg finden, das Kontext-Menü vom Windows-Explorer so aufzubohren, dass dort dein Programm aufgeführt wird und mit der selektierten Datei als Parameter gestartet wird.
    Dazu musst du etwas googlen, z.B. hier: http://www.vb-paradise.de/programmieren/hauptforum/6…
    Probiert hab ichs noch nicht.

Viel Erfolg!

Hallo und erst mal danke,

Ich möchte ein eigenes Programm nutzen und somit 100% sicher sein.
Desertieren stört mich bei den anderen cryptprogeammen die doch ehr lästige anwendungsmetode. Ich versuche ein Programm zu schreiben was automatisch ankommende Dateien verschlüsselt.
Mit Boxcrypter kann man nur bekannte Dateien einzeln öffnen. Die Alternative hierzu wäre trycrypt hier kann ich noch recht gut mit arbeiten aber das hat wiederum keine app für Apple iPad.
Daher nun der Eigenversuch und als hobbyprogrsmmierer ist es wieder eine Herausforderung für mich :wink:

Hallo,

hier eine ausführliche Beschreibung, wie du Programme über die Regristry in das ContextMenue einbindest:

http://msdn.microsoft.com/en-us/library/windows/desk…

Las mich mal wissen ob es funktioniert hat!

DANKE!

Vielen dank, ich werde mich dem mal zuwenden und gebe auch bescheid

Mit Dropbox habe ich zwar keine Erfahrung. Das ist vermutlich für die Beantwortung deiner Frage nicht notwendig.

Frage: Wie stellst du die Ordner und Dateien in deinem PC-Programm dar. In einer Listbox oder Combobox? Kannst du mir ein Programm-Sample schicken?

Hallo Nico MoD,
Deine Anfrage kann ich leider nicht beantworten. Mit diesem Thema habe ich mich noch nie auseinander gesetzt. Es tur mir Leid, zumal ich offenbar die gleiche Schule besuchte. Zwischendurch beschäftigte ich mich auch noch mit Power Basic.
Für mich ist die Verschlüsselung deshalb kein Thema, weil ich selbst schon genug Arbeit habe meine eigenen daten zu finden und die Fülle an Daten bereits schon Verschlüsselungs- Tendenzen auf weist. (hi)
Viele Grüße
Dieter

Hallo,

Momentan habe ich noch kein programm begonnen. Ich suche noch nach ideen und deren umsetzung.
Ich stelle mir vor einen eigenen Ordner lokal zu haben und diesen verschlüsselt automatisch bei änderungen an dropbox zu senden.
Und später möchte ich gerne ein programm was sich ins kontex von ordnern und dateien einbindet, wo ich per rechter maustaste sagen sende an dropbox.
Das ganze soll ähnlich wie das offline sync von windows arbeiten.
Alle markierten ordner für das verschlüsselte senden an dropbox werden per filewatcher überwacht und geänderte dateien landen so automatisch verschlüsselt ins dropbox.
Das ganze möchte ich auch so gestalten das es rückwärts arbeitet, da man ja mehrere pcs mit dropbox verbinden kann.

Hallo Nico,

ich habe zwar kein Programmierbeispiel, aber soweit ich mich erinnere ist das Context-Menü nur ein Registry Eintrag.

Eine kurze Google Suche bringt mich auf diese kleine Anleitung:
http://www.howtogeek.com/howto/windows-vista/add-any…

Damit kannst du primär ein Programm aufrufen und keine Funktion. Du musst zusätzlich noch Parameter angeben. Das beispiel oben gilt überigens nur für den Desktop, da das Kontextmenu abhängig vom Dateitype ist, musst du eine enstprechende Location finden.

Ein Tutorial gibt es von Microsoft, leider etwas „kryptisch“
http://msdn.microsoft.com/en-us/library/windows/desk…

Ich hoffe das hilft erstmal ein Stück weiter.

Gruß,
Frank

Was ich grundsätzlich dazu sagen kann: Man kann auf jeden Fall ein Kontextmenü auf jedes Object (Control) legen und bestimmen, auf welcher Position (hier: auf welchen Ordner oder welche Datei) die linke Maustaste gedrückt wurde.

Das genaue Vorgehen hängt ab, in welchem Typ von Object du die Ordner und Dateien ablegst.

Mein Vorschlag: Mach doch einen rudimentären Design des Windows deines zukünftigen Programms und fülle das gewählte Object (Listbox, Imagelist oder was auch immer) mit einigen Ordnern und Dateien. Ansonsten hinterlegt du hinter den Objects keine weiteren Programmcode. Schick mir dieses Sample und versuche, ein Kontextmenü einzubauen, welche dir anzeigt, welcher Ordner, bzw. welche Datei mit der linken Maustaste das Kontextmenü aufgerufen hat.

Sorry, der Druckteufel hat mitgespielt. Natürlich werde ich (nicht du) versuchen, dieses Kontextmenü in dein Sample einzubaue

Sorry, bin in REHA, hoffe du hast die Lösung schon.
Viel Erfolg

Hallo,

dafür sind Einträge in der Registry notwendig. Ich hab soetwas ähnliches mal gemacht um mir Verknüpfungen auf dem Desktop zu ersparen.

[HKEY\_CLASSES\_ROOT\Directory\Background\shell\Crypt]
[HKEY\_CLASSES\_ROOT\Directory\Background\shell\Crypt\command]
@=:\\"

Das könnte so aussehen. allerdings wird hier (glaube ich) eine Verknüpfung mit dem Desktop Kontextmenü durchgeführt.
Dein Programm sollte dazu Startoptionen auswerten können, um den pfad des Ordner zu erhalten.

Enrico

Hi,

erstmal sry für die späte Antwort. Damit es performant ist solltest du auf C++ setzten. Allerdings geht das auch mit .net. Wie genau kann ich dir leider nicht sagen…

Lg Knerd