Visual Studio 2005

Dieses Thema im Forum "Programmieren" wurde erstellt von Dayi, 1. März 2006.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Dayi

    Dayi Byte

    Registriert seit:
    1. Juni 2001
    Beiträge:
    67
    Hallo an alle Profis!

    Ich habe mir die Studentenversion von Visual Studio 2005 gekauft. Bin im ersten Semester WI und versuche mich an meinen ersten C++ Programmen.
    Natürlich habe ich mit einem "Hallo Welt!" Programm angefangen. Geschrieben, kompiliert, erstellt. .EXE steht. Habe die EXE ausprobiert, funktioniert auch außerhalb von VS 2005 problemlos. Habs einem Kumpel geschickt und siehe da. Es funktioniert nicht bei ihm. Der Fehler: Er hat kein .net 2.0 drauf gehabt! Alle Programme, die ich mit VS 2005 mit C++ (als Win32 Konsolenanwendung) geschrieben habe, benötigen .net 2.0. Da ich das nicht möchte hier meine Frage an alle Experten:

    Wie kann ich der IDE sagen, sie soll NICHT .net benutzen sondern unabhängig davon eine EXE erzeugen?

    Vielen Dank im Voraus!

    Dayi
     
  2. JojoKoester

    JojoKoester Halbes Megabyte

    Registriert seit:
    13. Dezember 2003
    Beiträge:
    547
    die frage ist nur, ob der das überhaupt "kann"
     
  3. Dayi

    Dayi Byte

    Registriert seit:
    1. Juni 2001
    Beiträge:
    67
    Genau DAS ist die Frage... wer kann sie beantworten?

    btw: kann mit VS 2005 auch DX Anwendungen schreiben, ohne Einschränkungen zu haben?
     
  4. LuxDevictaEst

    LuxDevictaEst Byte

    Registriert seit:
    4. Februar 2006
    Beiträge:
    13
    Hi!

    Ist zwar keine Antwort auf deine Frage, aber versuchs doch mal mit Dev-C++. Richtig gute Entwicklungsumgebung und die gibts auch noch umsonst. Die MS-C++ Sachen hatten bei mir auch des öfteren ihre Macken, aber Dev-C++ läuft bis jetz einwandfrei.

    mfg
    LDE
     
  5. JojoKoester

    JojoKoester Halbes Megabyte

    Registriert seit:
    13. Dezember 2003
    Beiträge:
    547
    Ja, der DevC++ ist wirklich gut. Du kannst Ihn dir hier downloaden: LINK

    johannes
     
  6. Dayi

    Dayi Byte

    Registriert seit:
    1. Juni 2001
    Beiträge:
    67
    Sorry, dev c++ ist KEINE Alternative zu VS 2005. Ich benutze die Bibliotheken, die nunmal zu Microsoft gehören. Mit Dev kann ich eben kein MFC u.Ä. machen. Sorry.

    Also gibt es keinen hier im Forum, der eine Antwort darauf weiß? Ich weiß mitlerweile schon, dass es wohl geht, man es dem Kombiler nur stecken. Wie mache ich das also?
     
  7. Dayi

    Dayi Byte

    Registriert seit:
    1. Juni 2001
    Beiträge:
    67
    Danke an alle! Das Problem ist gelöst.

    Also es hat nix mit .net zu tun. Vielmehr an den Bibliotheken, die vom c++ benutzt werden. Diese werden, selbst bei einem Miniprogramm wie "Hallo Welt", benötigt und DYNAMISCH verlinkt.
    Wenn man also ein Programm weiter gibt an jemanden, der die Bibliotheken nicht benutzt, der schaut in die Röhre. Das Problem lässt sich lösen, wenn man die benötigten Bibliotheken statisch verlinkt.

    Genug Theorie (ich selber kapier auch nicht wieso und warum). Hier die Einstellungen, um das Problem zu behebn und Programme bei anderen Menschen zum Laufen zu bringen.

    Projekt --> <PROJEKTNAME>-Eigenschaften --> Konfigurationeigenschaften --> Allgemein --> Verwendung von MFC
    und hier bitte auf "MFC in einer statischen Bibliothek verwenden" auswählten. Erstellen--- fertig :-)
     
  8. enschman

    enschman Megabyte

    Registriert seit:
    29. Dezember 2005
    Beiträge:
    1.224
    Hi,

    jetzt noch mal zu der Frage, ob VS 2005 normale Exe-Dateien ohne .net erstellen kann: NEIN!

    VS 2005 wurde für die neue .net-Version 2 programmiert und kann nicht mal abwärtskompatibel .net 1.1-Programme wie VS 2003 erstellen!

    Für Exe-Dateien ohne .net eigen sich Compiler wie die von Dev-C++ oder Borland C++!

    Wenn Ihr mit .net programmieren wollt, würde ich euch allerdings die systemnähere Programmiersprache C# empfehlen, lerne ich jetz auch so langsam aber sicher!

    mfg Tenschman

    ----------------------------------------------------
    meine HP: ******************
     
  9. Rattiberta

    Rattiberta Halbes Gigabyte

    Registriert seit:
    22. März 2003
    Beiträge:
    5.526
  10. AS_X

    AS_X Halbes Megabyte

    Registriert seit:
    17. Oktober 2002
    Beiträge:
    585
    Normalerweise müsste das doch gehen. Einfach KEINE Windows-Forms-Anwendung (Windows.Forms ist eine .NET Komponente), sonder eine Win32-Anwendung erstellen. Dann hat man natürlich aber nicht die tolle Klassenbibliothek von .NET. Alles geht über CreateWindow und die Message-Loop, iii. Muss nicht mehr sein, wenn nicht unbedingt nötig.

    Für .NET gibt es überdies Tools, die die vom Programm benötigten Komponenten des .NET-Frameworks in deine EXE hineinlinken, damit diese ohne das Framework ausführbar sind. Die Tools kosten aber viel, leider.

    Überdies kann man unter .NET mit Managed DirectX DirectX-Anwendungen programmieren, einer objektorientierten Schnittstelle zu DirectX. Die Doku dazu gibts im DirectX-SDK, willst du ohne .NET DirectX-Anwendungen entwickeln, dann musst du wie oben angegeben ein Win32-Projekt erstellen. Viel Handarbeit, wie gesagt.

    Soweit,
    Andy.
     
  11. kasimir27

    kasimir27 Guest

    installiere das Platform-SDK , und setze die entsprechenden Pfade

    • * Executable files
    • * Include files
    • * Library files

    editiere die "corewin_express.vsprops" zu finden im Verzeichnis "C:\Programme\Microsoft Visual Studio 8\VC\VCProjectDefaults"

    ersetze

    Code:
    AdditionalDependencies="kernel32.lib"
    
    mit
    Code:
    AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
    navigiere zum Verzeichnis &#8220;%ProgramFiles%\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1033\"

    ändere den Inhalt von "AppSettings.htm" folgend ab
    Code:
    // WIN_APP.disabled = true;
    // WIN_APP_LABEL.disabled = true;
    // DLL_APP.disabled = true;
    // DLL_APP_LABEL.disabled = true;
    erstelle ein neues Project , wähle Win32 > Konsolenanwendung , im Assistenten wähle WindowsForms-Anwendung.

    voila
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen