Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
In Applikation alternativ 32-bit oder 64-bit DLL verwenden
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.757

beantworten | zitieren | melden

Zitat von oehrle
Warum steht jetzt bei Prozessorarchitektur plötzlich AMD64 ??
Weil das halt so heisst. AMD64

Erster Google Treffer: Was bedeutet die AMD64-Bezeichnung für CPUs?
Zitat
Muss ich diese Projekt aomit auch mit x86 und x64 - Konfiguration ausstatten, damit alles funktioniert?
Das wurde Dir aber schon weiter oben erklärt und auch verlinkt.
Das kommt drauf an. In 99% der Fälle reicht hier AnyCPU und die Runtime übernimmt das für Dich.
Lies doch einfach bitte ein bisschen die Basics.
private Nachricht | Beiträge des Benutzers
oehrle
myCSharp.de - Member



Dabei seit:
Beiträge: 428
Herkunft: Germany

Themenstarter:

beantworten | zitieren | melden

Hallo, habe das nun soweit hingekriegt, vielen Dank an EUCH !!!
Es war noch ein Problem mit einem weiteren Projekt, das ich in der Solution eingebunden habe. Das Projekt ist in VisualBasic programmiert, das habe ich so gemacht, da ich die DLL' s der externen Firma nicht in C# einbinden konnte. Dazu sind die DLL's einmal mit 32 - und 64-Bit ausgezeichnet. Also hatte ich das alles in VB gemacht, mit den Funktionen die ich brauche und habe dann die erstellte DLL somit in meiner Hauptapplikatin verwendet. Das Problem war jetzt, das ich die 64-Bit-Version nun auch noch erstellen mußte, dazu waren Anpassungen notwendig, egal, habe ich gemacht und dann hatte ich eine DLL für 32- und 64-Bit, die ich nun verwende.
Meine Frage: Zuvor hatte ich in der Hauptapplikation dieses VisualBasic-Applikation als "Projekt" eingebunden.
Gibt eigentlich eine Möglichkeit, das man immer noch das Projekt einbindet, und beim Erstellen werden in der VisualBasicapplikation auch die korrekt bittigen DLL's gezogen?

Das Hauptproblem das ich noch habe ist aber Excel. Ich lese in einem Projekt auch Exceldateien ein ("XLS"-Format, nicht "XLSX"). Da benutze ich die "Interop"-DLL und dazu noch die "Microsoft.Jet.OLEDB.4.0". Da motzt das System bei x64.
Wie kann ich das machen, das es auf x86 und x64 läuft? Das Excelgedöns mit "NPOI" erschlagen ?? Oder gibt es da auch etwas für MSBuild mit "Referenz" ? Das was ich im Nezt gesehen habe, war mit Registrierungen über regsvr32 dieverser DLL's, aber ich kann nicht an zig Rechnern durchgehen und das Zeugs registrieren, das muss pragmatischer laufen.
Hat jemand eine Idee?
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von oehrle am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.757

beantworten | zitieren | melden

Zitat von oehrle
Wie kann ich das machen, das es auf x86 und x64 läuft? Das Excelgedöns mit "NPOI" erschlagen ?? Oder gibt es da auch etwas für MSBuild mit "Referenz" ?
Will Deine Applikation x64, dann muss bei Interop-Zugriffen die Applikation als x64 Version vorliegen.
Das heisst: willst Du Interop nutzen, muss Office in der gleichen Bitness installiert sein, wie Du es brauchst.
Musst also eine Bitness fokussieren, oder eben beide und dann anhand eines Installers ermitteln, welche Version Du brauchst und dann installieren.
Völlig üblich in dieser Bitness-Matching-Welt.

Side by Side bei Office selbst wird nicht unterstützt. Dazu gibts auch nen Hinweis im Office Installer Howto.
Übrigens (auch) einer der Gründe, wieso VSTO keine Zukunft mehr hatte und alle neuen Plugins in Office JavaScript vorsehen.

Alternativ: ja, alles was Bitness-Matching erfordert (COM, Interop).. halt weglassen und andere Wege nehmen.

Vielleicht liest Dir wirklich mal die Technik durch, wie so ein PC und wie Prozesse sowie Bitness funktionieren.
Dann ersparst Dir auch so versuche mit Registry-Hacks, weil Du dann schon weißt, dass das halt keine Lösung sein kann ;-)
Damit verbrätst halt nur Deine eigene Zeit, die Du ja lieber in die Lösungen stecken kannst.
Zitat von oehrle
das muss pragmatischer laufen.
Tjo, das sind harte Regeln. Pragmatisch ist da nicht viel.
private Nachricht | Beiträge des Benutzers