Beiträge von marX

    also ohne jetzt jemanden persönlich zu beleidigen ....
    .... ich finde es schon etwas *traurig*, dass jemand in diesem forum nicht
    weiß was batch-files sind! -> da hast du wirklich nachholbedarf ;)

    2. => if %1="" goto error
    geht natürlich nicht, weil stapelverarbeitungsdateien (->batch-files) nur sehr einfach "programmiert" werden können. -> eigentlich kann man nicht mal von programmieren sprechen weil im wesentlichen nur kommandozeilen-befehle eingegeben werden können!!

    also wenn du das ziel-verzeichnis als eingabe einlesen willst, gibt es nur folgende 2 (guten) möglichkeiten:
    1. du verwendest (wie es beefy schon sagte) vb-scripts -> dort kannst du relativ viel machen ODER
    2. (was ich tun würde) du schreibst ein ordentliches c/c++ programm und hast das problem in <15 minuten sauber gelöst ;)

    mfg marX

    also ich glaube nicht, dass das ein trojaner ist, schon allein desshalb, weil ein trojaner versteckt arbeiten soll und der programmierer sicher darauf geachtet hat, dass keine ausgaben gemacht werden...
    außerdem hätte ein vierenscanner die meisten trojaner entdeckt!

    => die warscheinlich beste möglichkeit sicher zu sein, dass es kein trojaner ist, ist eine gute firewall zu installieren und damit die sockets zu überwachen -> ein trojaner wird meistens versuchen (nach einwahl ins internet) kontakt zu einem anderen rechner herzustellen.

    mfg marX

    Zitat von Soulmerge

    Einen Augenblick, bitte, das ist ein Programm, das *ich* geschrieben habe. Das ist einfach mein Programmierstil, und es lässt sich in *meinem* Visual C++ *nicht* kompilieren!!!! Also sagt mir nicht ständig, ich hätte ein Problem mit #includes, stattdessen wäre ein "Wahrscheinlich ist dein VC++ anders geconft" hilfreicher gewesen.

    es ist natürlich deine sache wie du programmierst, aber wenn du nicht auf "gute ratschläge" hören willst und deinen "programmierstil" behälst darfst du dich auch nicht wundern, wenn deine programme nicht funktionieren, bzw. sie sich nicht übersetzen lassen!

    die methoden wie sie RingDing oben beschrieben hat werden von ALLEN verwendet, ganz einfach desshalb weil ALLE C/C++ Compiler auf diesen konventionen aufbauen!

    dein "include-system" mag vielleicht mit diesem speziellen borland-compiler funktionieren, dieser wurde aber sicher nicht so entwickelt, dass es so gemacht werden muss!!! => kein anderer compiler (von dem ich je gehört habe) verwaltet projekte so => diese programme sind so desshalb auch nicht gerade portabel... (würde mich gerade interessieren, was POSIX dazu sagt ;))

    das es mit *deinem* vc++ NICHT funktioniert hängt sicher nicht mit der conf. zusammen ... das würde HOFFENTLICH auch bei mir nicht funktionieren!! ich schätze mal als RingDing das test-prog. übersetzt hat verwendete er die "normalen" konventionen!

    dies sollte KEIN angriff auf deine programmierfähigkeiten sein, aber wenn ich du wäre, würde mir doch überlegen ob ich nicht auf bewährte techniken zurückgreifen sollte...

    mfg marX

    na ja pascal (speziell für lernzwecke enrwickelt => sehr strukturiert und einfach) wurde bei der ganzen wichtigtuerei (mach i nämlich auch gern - lol) ja wohl gänzlich vergessen....

    trotzdem kann ich mich (als alter C-Fetischist) nur der allgemeinen meinung anschließen...;) -> ich würde dir aber nicht raten gleich C++ zu programmieren sondern zuerst nur C, weil objektorientiertes programmieren zu beginn "etwas" frustrierend sein kann!!

    Zitat von a9bejo

    Am besten ist es, die plattformspezifischen Trennzeichen gleich durch plattformunabhängige Platzhalter zu ersetzen, also:

    Code
    String fs = System.getProperty("file.separator");
    String userHome = System.getProperty("user.home");
    
    
    File newDir = new File(userHome+fs+"temp"+fs);
    
    
    dann läufts nämlich auch unter MacOS X ;)

    also "\"+char ist NICHT plattformspezifisch, sondern hängt von der jeweiligen verwendeten sprache ab!
    2. wenn ein "\" Zeichen gesetzt werden will muss mann desshalb ein doppeltes "\\" machen, weil das erste "\" dem Compiler sagt, dass ein "steuerzeichen" (-> z.B. "\n", "\r", "\t") ausgegeben werden soll. das 2. "\" sagt dem Compiler dann, dass das Zeichen "doch nur" ein "\" sein soll *gg*

    klingt blöd, is aber so ;)

    Zitat von Soulmerge

    (Die Definition einer Funktion f von A in B.obj, also: A::f already defined in B.obj ). Das Problem ist zwar nicht mehr so dringend, würde mich aber trtzdem interessieren, wie der auf so etwas kommt???

    Das passiert, weil du ja b.cpp in a.cpp inkludierst !! ;)
    => VC++ übersetzt dann b.cpp nochmals (einzeln) und linkt dann a.obj und b.obj zusammen, was wiederum den fehler verursacht (die fkt. f wurde in beiden .obj dateien deklariert...)

    mfg marX

    wenn so ein problem auftritt solltest du nicht einfach den compiler wechseln, sondern du solltest dich fragen, was du falsch gemacht hast:

    .c oder .cpp files zu includieren ist ein GROBER felher!!!

    kleiner tipp am rande:

    header:
    NUR deklarationen (und inline...)
    am anfang ->
    #ifndef FILENAME_H
    #define FILENAME_H
    ... text ...
    #endif
    -> damit verhinderst du, dass der code (bei mehrmaligem includieren mehrmals durchlaufen wird.
    -> vor alle variablen und fkt. muss (im header-file) "extern" gesetzt werden um dem compiler anzuzeigen, dass dieses symbol hier nur deklariert wird, der code aber in einer anderen datei folgt. (z.B. extern int i;)
    im c/cpp file ganz normal (z.B. int i;)

    was du aber gemacht hast, ist anstatt eines projekt-files alle c-files in eine datei zu includieren!!

    ich kann dir aber nur raten dir einen "saubereren" programmierstiel anzugewöhnen!! sobald du mehr files hast wird das nicht mehr funktionieren bzw. deine info-lehrer werden verzeifeln ;)
    ...außerdem ist visual c++ (meiner meinung nach) ein sehr guter compiler (entwicklungsumgebung)