Beitrag sagt mehr
-
Hallo,
ich hätte da eine sehr kommische Frage. Ich arbeite an einem Projekt, das aus vielen kleinen Projekten (besser gesagt kleine programme) bestehet. Diese kleine Programme werden vom Hauptprogramm mit der Funktion WinExec aufgerufen, wenn der User eine Menüeintrag (oder so) klickt. Der Hacken ist, der User hat auch Zugriff auf diese Programme, ich will aber verhindern, daß er sie per Mausklick startet, d.h wenn der User auf ein Programm mit der Maus 2 mal klickt, darf das Programm nicht starten, aber wenn er auf das entsprechende Menüeintrag klickt soll das Programm gestartet werden.
Ich würde mich sehr freuen, wenn jemand mir weiterhelfen könnte, ich habe überall nach einer Lösung gesucht, habe aber bis jetzt nichts gefunden.
Danke im voraus.
-
Gib den Dateien andere Endungen. Ich glaub die können dann trotzdem noch per WinExec ausgeführt werden.
-
ichh suche eigentlich eine elegantere Lösung, ist es nicht möglich in MFC ein Programm zu sperren, daß ein Doppelklick zu nichts führt??
-
lol
-
Ja geht, in die InitInstance:
CCommandLineInfo cmdStart; ParseCommandLine(cmdStart); if(cmdStart.m_strFileName != "auto") { AfxMessageBox("Kein manueller Start erlaubt"); return FALSE; }Starten musst du deine Anwendung jetzt mit dem Parameter -auto, ansonsten kommt die Fehlermeldung auch bei deinem Programm.
PS: Bitte wähl nicht so intelligente Beitragstitel.
-
Hi,
ist extrem unsicher.
Die eleganteste Lösung wäre DLLs zu verwenden.
Der, der versucht dein Programm zu "hacken", der müsste dann schon fortgeschrittenere Programmierkenntnisse besitzten.
Wie gesagt, ich empfehle dir, dlls zu verwenden.
Grüße Rapha
-
Klar ist das unsicher, aber ich verwende das in meinen Programmen rein nur als Fehlerabsicherung. Wer sich den Fehler mit Gewalt erzwingen will, bitteschön hab nichts dagegen.
