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

  • Frage

  • 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 :)


    • Bearbeitet Discofix Freitag, 11. Januar 2013 19:53
    Freitag, 11. Januar 2013 19:52

Antworten

  • 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

    • Als Antwort markiert Discofix Freitag, 11. Januar 2013 21:55
    Freitag, 11. Januar 2013 21:31
    Moderator
  • 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

    • Als Antwort markiert Discofix Freitag, 11. Januar 2013 21:55
    Freitag, 11. Januar 2013 21:31

Alle Antworten

  • 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

    • Als Antwort markiert Discofix Freitag, 11. Januar 2013 21:55
    Freitag, 11. Januar 2013 21:31
    Moderator
  • 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

    • Als Antwort markiert Discofix Freitag, 11. Januar 2013 21:55
    Freitag, 11. Januar 2013 21:31
  • Dankeschön für eure Hilfe, ich hatte noch die Visual C# Express Edition 2008, jetzt habe ich es aber gesehen.

    -Discofix :)


    • Bearbeitet Discofix Freitag, 11. Januar 2013 21:58
    Freitag, 11. Januar 2013 21:57
  • 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;
    


    • Bearbeitet Rabbit007 Samstag, 12. Januar 2013 11:02
    Samstag, 12. Januar 2013 10:53
  • Habe es hinbekommen eine Änderung des Frameworkes hat geholfen.
    Samstag, 12. Januar 2013 12:03