none
32-Bit Anwendung auf einem 64-Bit System erstellen

    Question

  • Hallo Leute,

    Ich habe Windows 64 und darauf eine Anwendung drauf programmiert, konnte die aber nicht bei einem 32-Bit Rechner öffnen.

    Hier meine Frage: Wie kann ich in Visual Studio C# auf einem 64-Bit Rechner eine Win32 Anwendung erstellen?

    Danke schon im Vorraus,


    -Discofix :)


    • Edited by Discofix Friday, January 11, 2013 7:53 PM
    Friday, January 11, 2013 7:52 PM

Answers

  • Hallo,

    standartmäßig sollte die zielplattform auf AnyCPU stehen. Das wird dann zu Laufzeit entsprechend ausgeführt. Ändern kannst du die Zielplattform so: Projekt > PROJEKTNAME Eigenschaften > Erstellen > Allgemein > Zielplattform

    Achte auch darauf das du alle nötigen DLL's und das richtige .NET Framework mitlieferst.


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Marked as answer by Discofix Friday, January 11, 2013 9:55 PM
    Friday, January 11, 2013 9:31 PM
  • Hi,

    in Deinen Projekteigenschaften hast Du auf dem zweiten Reiter ("Build" in der englischen Version) rechts oben die Möglichkeit die "Plattform" einzustellen. Hier darf nicht x64 stehen, denn dann wird die Assembly nur für 64-bit Windows übersetzt. Bei x86 läuft es anschließend nur im 32bit Modus (unter 64bit also als WOW); bei "Any CPU" läuft es auf 32bit Windows und unter 64bit im 64bit Modus.

    Wenn dort nur x64 zur Auswahl steht, musst Du im KonfigurationsManager (im DropDown Debug/Release/KonfigurationsManager) eine passende Konfiguration anlegen.

    Gruß
    Jürgen

    • Marked as answer by Discofix Friday, January 11, 2013 9:55 PM
    Friday, January 11, 2013 9:31 PM

All replies

  • Hallo,

    standartmäßig sollte die zielplattform auf AnyCPU stehen. Das wird dann zu Laufzeit entsprechend ausgeführt. Ändern kannst du die Zielplattform so: Projekt > PROJEKTNAME Eigenschaften > Erstellen > Allgemein > Zielplattform

    Achte auch darauf das du alle nötigen DLL's und das richtige .NET Framework mitlieferst.


    Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets

    • Marked as answer by Discofix Friday, January 11, 2013 9:55 PM
    Friday, January 11, 2013 9:31 PM
  • Hi,

    in Deinen Projekteigenschaften hast Du auf dem zweiten Reiter ("Build" in der englischen Version) rechts oben die Möglichkeit die "Plattform" einzustellen. Hier darf nicht x64 stehen, denn dann wird die Assembly nur für 64-bit Windows übersetzt. Bei x86 läuft es anschließend nur im 32bit Modus (unter 64bit also als WOW); bei "Any CPU" läuft es auf 32bit Windows und unter 64bit im 64bit Modus.

    Wenn dort nur x64 zur Auswahl steht, musst Du im KonfigurationsManager (im DropDown Debug/Release/KonfigurationsManager) eine passende Konfiguration anlegen.

    Gruß
    Jürgen

    • Marked as answer by Discofix Friday, January 11, 2013 9:55 PM
    Friday, January 11, 2013 9:31 PM
  • Dankeschön für eure Hilfe, ich hatte noch die Visual C# Express Edition 2008, jetzt habe ich es aber gesehen.

    -Discofix :)


    • Edited by Discofix Friday, January 11, 2013 9:58 PM
    Friday, January 11, 2013 9:57 PM
  • Hallo
    ich (blutiger Anfänger) habe mit auch mal an C# gewagt und habe das gleiche Problem wie der Beitragsersteller. Ich möchte einfach einen Text in eine Excel-Tabelle schreiben. Auf meinem 64bit System läuft es auf einem 32bit nicht "keine zulässige 32bit Anwendung". Habe die Einstellungen der Zieplattform ohne Erfolg geändert und das Zielframework ist ".Net framework 4.5". Ich hoffe Ihr könnt mir da auch weiterhelfen.

     private void button1_Click(object sender, EventArgs e)
            {
                meineMethode();
            }
            static void meineMethode()
            {
                Excel.Application xlApp;
                Excel.Workbook xlWorkBook;
                Excel.Worksheet xlWorkSheet;
    
                xlApp = new Excel.Application();
    
                xlWorkBook = xlApp.Application.Workbooks.Add(1);
                xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
                xlWorkSheet.Cells[1, 1].NumberFormat = "@";
                xlWorkSheet.Cells[1, 1] = "Hallo dies ist ein Test";
    
                xlApp.Visible = true;
            }

    Habe noch was vergessen!

    using System;
    using System.IO;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.Collections;
    using Excel = Microsoft.Office.Interop.Excel;
    


    • Edited by Rabbit007 Saturday, January 12, 2013 11:02 AM
    Saturday, January 12, 2013 10:53 AM
  • Habe es hinbekommen eine Änderung des Frameworkes hat geholfen.
    Saturday, January 12, 2013 12:03 PM