Befehl gesucht!!! Erbitte Hilfe!



  • Hallo, erstmal *TOP* Forum, bin begeistert...

    Dann meine Frage:

    1.Ich suche einen C++ Befehl, der dem Programm sagt, dass es nicht geschlossen werden kann, oder nicht geschlossen werden kann bis alle abläufe vollendet sind.

    2.Und noch ein Befehl, und zwar dass das Programm beim Start in das Verzeichnis "C://Dokumente und Einstellungen//DER BENUTZER//Desktop"

    oder einfach irgendwoanders hin, hauptsach auf die Platte.

    Natürlich will ich keinen Virus oder schlimme sachen machen, ich möchte lediglich Privat einen Test machen. Privatnetzwerk.

    Also Vielen Dank...

    Gruß

    Luigi0405



  • Luigi0405 schrieb:

    Hallo, erstmal *TOP* Forum, bin begeistert...

    Dann meine Frage:

    1.Ich suche einen C++ Befehl, der dem Programm sagt, dass es nicht geschlossen werden kann, oder nicht geschlossen werden kann bis alle abläufe vollendet sind.

    2.Und noch ein Befehl, und zwar dass das Programm beim Start in das Verzeichnis "C://Dokumente und Einstellungen//DER BENUTZER//Desktop"

    oder einfach irgendwoanders hin, hauptsach auf die Platte.

    Natürlich will ich keinen Virus oder schlimme sachen machen, ich möchte lediglich Privat einen Test machen. Privatnetzwerk.

    Also Vielen Dank...

    Gruß

    Luigi0405

    zu 1.
    es gibt keinen Befehl, du mußt schon selbst kontrollieren ob dein Programm beendet werden kann, oder so lange warten bis alle Sachen erledigt sind bis du dein Programm beendest.

    zu 2.
    versteh ich nicht was du willst, soll dein programm in ein bestimmten verzeichnis liegen, oder eine Datei in einem bestimmten verzeichnis ablegen oder was auch immer. etwas mehr erklärung währe hilfreich.

    gruß Matthias



  • Danke erstmal für die schnelle Antwort.

    Also ich hab gemeint, dass das Programm ja jederzeit durch "schließen" oder das "x"
    jederzeit geschlossen werden kann. Gibt es da etwas, das es nicht möglich ich das Programm zu schließen? Oder erst wenn das Programm dann sagt "zum Beenden beliebige taste drücken..." -oder so...?

    Und dann noch wegen der kopie. Ich wollte das das Programm, sich selber, wenn man es startet, auf die Festplatte des Anwenders kopiert....

    Und noch was, wie kann ich den icon ändern, das bild, das man dann doppelklickt und dann das Programm erscheint?

    Danke nochmal ...

    Bitte um Antwort... Hoffentlich nochmal so schnell...

    Gruß

    Luigi0405


  • Administrator

    Zu 1: Es gibt keinen C++ Befehl dafür. Es gäbe eine Möglichkeit allerdings dies mit der MFC zu realisieren. Du könntest bei einem Dialog die OnOk, OnCancel Methoden überschreiben oder die WM_CLOSE Nachricht abfangen. Bei einem SDI/MDI könntest du die OnCloseDocument Methode im Dokument überschreiben oder die WM_CLOSE Nachricht im MainFrame abfangen und entsprechenden Code dort einfügen. Gibt da viele Möglichkeiten und es kommt halt immer ein wenig drauf an, was man am Ende genau tun will.

    zu 2: Da begreife ich auch nicht was du willst. Wenn du ein Programm auf deinem Computer startest, dann ist es doch schon auf deinem Computer. Werd also mal ein wenig genauer, damit man dir auch helfen kann 😉

    Grüssli



  • Du kannst dir das Sys-Menu deiner anwendung hohlen und mit SC_ClOSE das 'Schließen'-Menü und das rote 'X' deaktivieren (Disabled) oder wenn es eine Dialoganwendung ist OnOK() und OnCancel() überschreiben. Ist es eine SDI/MDI Anwendung dann WM_CLOSE abfangen.

    wegen der Kopie kannst Du entweder Versuchen die laufende *.exe zu Kopieren oder ein 'Zugprogramm' zu benuten. Also das eigentliche Programm liegt als Resource im 'Zugprogramm welches beim Start die Resource in ein beliebiges Verzeichnis Kopiert das Programm startet und sich selbst beendet fertig. Gibt aber bestimmt noch andere lösungen.

    IDR_MAINFRAME unter Icon in den Resourcen deines Programmes ist das Icon deiner Anwendung, wenn du dieses änderst , sollte sich das icon deiner Anwendung auch ändern.

    Aber all diese sachen bis auf das mit dem Icon bedarfen einer gewissen kenntnis in C++/MFC, ohne dir nahe zu treten, vermisse ich da gewisse ansätze bei dir. Wiederspreche wenn ich daneben liege. Wenn aber deine bisherigen Projekte nicht über "Hallo World" hinausgegangen ist, solltest du erst einmal andere sachen machen.

    Gruß Matthias



  • Das riecht etwas nach Malware...



  • Danke, ihr habt mir sehr weitergeholfen. Nur mit dem Überschreiben des x komm ich noch nicht klar... Könnt Ihr mir da ein beispielquellcode schreiben? Danke...

    Gruß

    Luigi0405

    PS: Nix Malware



  • Ließ noch mal meinen letzten Beitrag, da wirst du sehen, das da nix mit überschreiben ist, und wie man WM_ClOSE in seiner eigennen Anwendung überschreibt, hinweis Klassenassisten, sollte doch wohl klar sein. in diesem Sinne

    Gruß Matthias



  • Ich bin no net so ganz fit, wär es möglich mir ein beispielquelltext zu geben? Danke..........

    Und ich will wirklich nichts schlimmes machen, jeder kann das programm ja immer noch mitm taskmanager beenden...

    Gruß



  • Ja helft doch dem armen bua!



  • Luigi04005 schrieb:

    jeder kann das programm ja immer noch mitm taskmanager beenden...

    nur mitn taskmanager ? dh dein programm wird man

    1. nicht sehen ?
    2. nicht anders beenden koennen ?
    3. nicht beenden koennen wenn man den namen nicht weiss ?
    4. evtl nichteinmal wissen das es bereits laeuft ?

    etweder du sagst was du vor hast, oder wir koennten direkt von etwas "boesen" ausgehen - und sowas wird hier nicht unterstuetzt

    ps. bedenke das es auch globale system variablen gibt mit den verzeichnissen



  • hast recht, is voll genial bis jetzt.

    Wollte jetzt noch wissen, wie sich das Programm woanders hinkopieren kann... an einen anderen Ort auf der Festplatte...

    Wie gesagt ich will auf meinem "nicht mit dem Internet verbundenem" Computer ein paar programme testen, die ich selber schreibe. Der rechner hat net einmal ein Modem, oder Netzwerkkarte. Is ein Windows 98 mit 400mhz. Naja, nur auf die antwort das ich was schlimmes vor hätte. So gut bin ich noch lange net, und das will ich auch net machen denn:

    Was du nicht willst das man dir tu, das füg auch keinem andren zu...

    Gruß

    Luigi 👍


Anmelden zum Antworten