brauche SCHNELL feedback bitte !! (läuft mein Programm unter Windwos?)



  • hdi-loggedOut schrieb:

    @supertux:

    ich lese ja, aber du meinst doch nicht ernsthaft dass "mit einem compiler" eine hilfe ist, oder?

    Deine Frage lautete: "Ich weiss noch immer nicht, wie ich ein Programm zu einer exe datei machen kann". Und das geht nur mit einem Compiler 😉

    hdi-loggedOut schrieb:

    ich habe übrigens auch gesagt, dass ich eher schlecht dem mädel, an das das prog geht, sagen kann sie soll sich pelleC installieren und das compilen.

    Neben den Binaries (EXE) wirst du die nötige Bibliotheken liefern müssen (sprich die DLLs). Was du brauchst ist also einen Installer, da kann dir google weiterhelfen. Einfach nach "free installer" oder sowas suchen. Google hat bei mir folgendes ausgespuckt:

    http://nsis.sourceforge.net/Main_Page
    http://www.jrsoftware.org/isinfo.php
    http://sourceforge.net/projects/spoon-installer

    Siehe http://www.thefreecountry.com/programming/setup.shtml für eine List mit freien Installern (wie gesagt, alles nur aus Google)

    hdi-loggedOut schrieb:

    ich habe es mit pelleC versucht, und habe gepostet, was da schief ging, aber da ist keiner drauf eingegangen.

    keine Ahnung, welcher Compiler pelleC verwendet. Aber vielleicht heißt dort __WIN32__ das Makro, was du brauchst. Benutze einen Debugger. Ansonsten hat win32-freak folgendes geschrieben:

    der hat wohl das 'WIN32' nicht automatisch definiert für consolen-programme. dazu gehst du auf project->project options->compiler->define preprocessor symbols und setzt da das WIN32 ein. bei den CCFLAGS (ganz unten) steht dann sowas wie: -Tx86-coff -Ot -W1 -Gd -Go -DWIN32. das -DWIN32 zeigt dir, dass WIN32 nun definiert ist und dann sollte es klappen.

    hdi-loggedOut schrieb:

    genauso wie noch die frage offen ist, wieso meine clear-funktion nicht geht, die ihr mir empfohlen habt.

    siehe eins oben

    hdi-loggedOut schrieb:

    ich hab auch nix dagegen wenn ihr über dinge diskutiert hier, aber es ist halt deprimierend wenn 10 posts kommen, aber keiner ist auf mich eingegangen 🤡

    Wir haben (wie ich bereits gesagt habe) schon dir geantwortet, was erwartest du denn noch von uns? Und nebenbei haben wir auch diskutiert wie sinnvoll bzw. sinnlos das Unix-fork ist, wo ist denn da das Problem?



  • nene also ich sagte ja es ist kein problem wenn ihr diskutiert.

    wir haben wohl einfach gerade eine verschiedene auffassung bezüglich der hilfe 😉

    ich fragte, wie man ein programm zu ner exe macht, du sagtest mit einem compiler.

    das ist zwar eine korrekt antwort von dir, aber das ist so wie wenn du mich fragst, wie man ein flugzeug landet, und ich sage dir: "mit einem flugzeug".

    verstehst du? ich meine ein compiler ist ein programm, bei so GUI-dingern vorallem noch eins mit sehr vielen funktionen.

    da ich mich damit nicht auskenne, müsste ich halt wissen was GENAU ich da machen muss 😉

    danke für die links mit den free installern, ich werde das jetzt mal hinkriegen.

    ps: das mit dem definieren von dem win32-makro in pelleC hatte ich missverstanden: ich dachte das müsste dann der user vom programm selber bei sich aufm windows-system machen, also pelleC installieren und das dann einstellen und compilen.

    ich versuch das jetz mal alles.



  • hdi-loggedOut schrieb:

    ich habe übrigens auch gesagt, dass ich eher schlecht dem mädel, an das das prog geht, sagen kann sie soll sich pelleC installieren und das compilen.
    deshalb die frage nach diesen "normalen" exe-dateien, wie das halt geht dass sie sich das auf den pc tun kann und einfach installieren, ohne compiler rumtun etc.
    "mit einem compiler" ist halt da einfach keine antwort drauf 😉

    doch, ist es. man braucht compiler/linker/ide/sonstwas nur für die programmerstellung (quellcode+libs zu einer exe machen). danach ist die 'exe' standalone lauffähig. entgegen dem was supertux sagte, brauchste einen installer nur für grosse programme, die noch dlls kopieren, verzeichnisse anlegen und registry-einträge machen usw. für kleine bis mittlere programme brauchste keinen installer. die benötigten library-funktionen können statisch in die exe gelinkt werden und die exe kann dann auf jeder windows-kiste laufen. einfach weitergeben ist gut ist's.
    🙂



  • ich sage nochmals:

    das ist zwar eine korrekt antwort von dir, aber das ist so wie wenn du mich fragst, wie man ein flugzeug landet, und ich sage dir: "mit einem flugzeug".

    ich will doch wissen, WIE das geht, ich sagte doch schon 10 mal dass ich davon keine ahnung habe 😞

    ich habe hier keinen knopf "mit nem compiler ne exe machen", versteht das doch!
    WIE mache ich mit einem compiler eine exe, und WIE binde ich da die libraries ein?



  • dann wäre die Richtige frage: Wie verwende ich einen Compilier? Und dazu gibt es von mir nur RTFM!

    Wie man einen Compiler verwendet, hängt natürlich vom Compiler ab: der GNU GCC wird andere Parameter haben als der von Microsoft. Die meisten IDEs kommen mit einem Kompilier, wo du nicht alle Optionen wissen musst, weil die IDE ein automatisches System zur Kompilierung (Makefile) haben.

    Welche Bibliotheken du einbinden musst, weiß ich doch nicht, kenn deinen Code nicht. *Das* musst *du* wissen, nicht wir. Und wie man sie einbindet, weiß ich nicht. Ich weiß nicht, welchen Kompiler du hast 😕

    entgegen dem was supertux sagte, brauchste einen installer nur für grosse programme,

    Egal wie klein ein Programm ist, wenn es ein dynamische Bibliothek benötigt, dann muss das Zielsystem diese Bibliothek ebenfalls haben. Deswegen nimmt da einen Installer, der die DLLs in die richtige Stelle kopiert usw und das hat mit der Größe eines Programms nichts zu tun. Wenn aber dein Programm keine dynamische Bibliotheken braucht, dann brauchst du auch keinen Installer, das ist ja klar.



  • doch, den hast du. bei pelles-c z.b. ist das ein rechteckiges kästchen mit punkten drin und darüber sind 3 pfeile. willst du uns nur veralbern oder bist du wirklich so blöd?
    🙂



  • hm..

    ihr seid irgendwie nicht da, wo ich bin. scheinbar habt ihr ein paar posts von mir überlesen, weil ich betet immer wieder nur "du brauchst nen compiler" runter, obwohl es schon 2 seiten vorher um eine ganz andere frage geht.

    und genau die supertux hättest du da auch schon erkannt, nämlich "wie verwende ich einen compiler". ich habe das nämlich gefragt, aber wie gesagt manche antworten irgendwie nur auf meinen ersten post und ignorieren alle anderen :p

    ich habe auch schon 3 oder 4 mal gesagt, dass ich pelleC benutze.
    und ich habe auch schon auf der ersten seite gesagt, welche bibliotheken bzw. funktionen aus bibliotheken bei mir problematisch sind, nämlich dass ich den screen nicht clearen kann unter windows.

    @knöpfchen-fan:
    hättest du den thread erst mal gelesen, hättest auch du gewusst, dass ich das ganze schon lange zu einer exe datei gemacht habe.
    aber ich habe danach gefragt, wie ich es RICHTIG mache, so dass die funktionen alle gehen. und genau so einen knopf gibt es eben nicht, da wollte ich halt eigentlich hilfe von euch, weil ich mich da nicht auskenne.

    ich geb euch gerne alle infos die ihr wollt.

    aber wenn ihr mich nach dem compiler fragt, den ich schon 4 mal erwähnt habe, fühl ich mich halt auch bissi verarscht :xmas2:



  • ..und dafür ist auch ein doppelpost gerechtfertigt (war ausgeloggt):

    knöpfchen-fan ich finde es nicht gut, dass du mich beschimpfst!
    selbst wenn ich den knopf übersehen hätte (was nicht der fall war, wie ich für dich grade nochmal zusammengefasst habe), kann man auch sagen:

    "na da ist er doch in dem rechteckigen feld mit den punkten",
    und nicht "mein gott du idiot wie dumm bist du denn?"....

    nur mal so, das war echt nicht so super 👎



  • hdi-loggedout schrieb:

    aber wenn ihr mich nach dem compiler fragt, den ich schon 4 mal erwähnt habe, fühl ich mich halt auch bissi verarscht :xmas2:

    hast du nie. Du hast nur gesagt, dass du pelleC benutzt aber mehr nicht. ICH kenne diese IDE nicht, hab keine Ahnung welche Compiler es mitnimmt. Schau selber in der Readme der IDE, dort wird bestimmt stehen, was fürn Compiler mitgeliefert ist.

    Ich halt mich jedenfalls raus, nichts für Ungut, aber du lässt dich selber sehr schwer helfen...



  • es ist halt immer so:

    ich lass mir schwer helfen wenn ich einfach keine ahnung habe.
    weil könnte ich das problem perfekt schildern, könnte ich es ja auch lösen.
    aber ich kenne mich mit sowas einfach nicht aus..

    z.B. dachte ich, dass dieses pelleC ein compiler ist.
    dass dem nicht so ist, musste mir halt auch erstmal jemand sagen, so wie du jetzt.

    ist halt doof ^^ man muss halt geduldig mit mir sein, weil wenn ich z.B. denke das ist ein compiler, und man fragt mich welchen compiler ich benutze, dann sag ich halt pelleC, und ihr denkt euch nur was labert der für sch*** :xmas1:

    aber was soll ich machen? ich weiss es nicht besser...



  • hdi_LO schrieb:

    z.B. dachte ich, dass dieses pelleC ein compiler ist.
    dass dem nicht so ist, musste mir halt auch erstmal jemand sagen, so wie du jetzt.

    okay, da du anscheinend in völliger finsternis zu wandeln scheinst, will ich mal ein fünkchen licht am ende des tunnels anmachen.
    um programme in C zu erstellen braucht man mindestens:
    1. einen editor (mit dem schreibt man den quellcode)
    2. einen compiler (der macht daraus maschinencode)
    3. ein paar standard- und systemlibraries (diese enthalten fertige funktionen für alles wichtige, wie z.b. 'printf')
    4. einen satz header files (enthalten unter anderem funktionsprototypen damit der compiler weiss, wie die library-funktionen aussehen)
    5. einen linker (der verbindet den soeben erzeugten maschinencode mit den libraries und macht daraus eine 'exe')
    'pelles-c' ist ein programmpaket, das all diese dinge enthält und einiges mehr wie z.b. eine projektverwaltung und einen debugger. ein derart gebündeltes paket schimpft sich IDE (Integrated Development Environment).
    so, und jetzt besorgst du dir noch ein C einsteigerbuch, liest massenweise tutorials aus'm internet (z.b. das: http://cslibrary.stanford.edu/101/EssentialC.pdf), spielst mit der IDE herum und dann klappt das schon.
    🙂



  • okay, danke.

    ich weiss schon was headerfiles sind und linker usw, ich hab schon viel programmiert mit java und auch c inzwischen recht viel.

    allerdings alles im rahmen des studiums - und dort wird halt nur linux benutzt, und wir brauchten nie ein IDE sondern lediglich den gcc compiler.

    daher kenne ich mich also nicht damit aus, wie man windows exe files macht mit so einem IDE..

    naja, ich werd sehen wie ich das mache. ich denke es zu einer exe machen werd ich schon packen, und ich versuch jetzt noch mit dem tipp, den ich bekommen habe, meine clearScreen-funktion zum laufen zu bringen.

    wenn ich's nicht hinkrieg, meld ich mich nochmal.

    nochmal danke und nix für ungut für die kleinen auseinandersetzungen :xmas1:
    is halt nich immer leicht mit so nem nap wie mir 🙄



  • hdi-lO schrieb:

    allerdings alles im rahmen des studiums - und dort wird halt nur linux benutzt, und wir brauchten nie ein IDE sondern lediglich den gcc compiler.

    es ist zum heulen, mit welchen vorsinntflutlichen methoden heute noch leuten das programmieren beigebracht wird.
    😞



  • also es hat geklappt mit der clear-Funktion jetzt, danke dafür nochmal, wer immer mehr das gesagt hatte mit dem definieren eines präprozessor-commands!

    jetzt hab ich aber noch eine andere frage:

    mein programm startet ja also normale win32-eingabeaufforderung.
    je nach auflösung oder geschmack des users startet das fenster ja unterschiedlich gross.

    mein programm besteht hautpsächlich aus einer tabelle.
    wenn also das fenster zu klein wäre, würde das alles zeilenumbrüche geben und hässlich aussehen.

    gibt es einen befehl, wie ich das am anfang meines programms maximieren kann?

    sowas in der art wie:

    int main(void){
    
    #ifdef WIN32
    maximize(cmd);
    
    #else
    maximize(shell)
    #endif
    
    ...}
    


  • EDIT

    (sorry für all die doppelposts, aber ich werd komischerweise jede 2 minuten ausgeloggt, obwohl ich immer anhacke, dass ich eingeloggt bleiben möchte..)

    mir ist grad noch was gekommen:

    ich könnte doch einfach bei den eigenschaften der exe-datei irgendwie nen run-parameter übergeben, dass er das in maximierten fenster starten soll, oder?

    die frage ist dann nur: gilt das für das system, wo man das einstellt, oder ist das dann mit in der datei verankert?

    weil letztendlich läuft das programm ja dann auf nem pc von nem freund, nicht auf meinem.



  • hdi-loggedOut schrieb:

    gibt es einen befehl, wie ich das am anfang meines programms maximieren kann?

    --> http://msdn2.microsoft.com/en-us/library/ms686028.aspx
    🙂



  • danke, allerdings kann ich damit nicht viel anfangen 😞

    wie binde ich das jetzt mit C-Programmiersprache ein?
    Wie gesagt, hatte noch nie was mit Windows-Befehlen zu tun..

    SetConsoleDisplayMode() ist ja keine Funktion, die mein Programm kennt?!
    Muss ich jetzt irgendwie n Headerfile einbinden, oder so?

    Sorry, ich hab echt null Ahnung davon..



  • auf der Seite stehts:

    Declared in Wincon.h; include Windows.h.
    

    Weiss aber nicht, ob dein Kompiler die <windows.h> mitgelifert hat.



  • hdi-loggedOut schrieb:

    danke, allerdings kann ich damit nicht viel anfangen

    die funktion geht auch erst ab win-xp aufwärts. so gehts bereits seit windoofs-nt

    #include <windows.h>
    #include <stdio.h>
    
    typedef BOOL (WINAPI *SCDPM) (HANDLE, DWORD, COORD*);
    
    int main ()
    {
       COORD coord;
       SCDPM SetConsoleDisplayMode;
    
       SetConsoleDisplayMode = GetProcAddress (LoadLibrary("kernel32.dll"), 
                                               "SetConsoleDisplayMode");
    
       SetConsoleDisplayMode (GetStdHandle(STD_OUTPUT_HANDLE), 
                              1, 
                              &coord);
    
       puts ("hello, fullscreen");
       Sleep (INFINITE);
    }
    

    (müsste mit pelles-c genau so gehen).
    🙂


Anmelden zum Antworten