sql >> Database >  >> RDS >> Oracle

Proberen om geen twee afzonderlijke oplossingen nodig te hebben voor het x86- en x64-programma

Dit is puur een implementatieprobleem, u hoeft nooit verschillende projecten te onderhouden. Het is echter een lastige, en boe voor Oracle omdat ze dit niet zelf regelen. Een andere overweging is dat deze assembly echt op de doelmachine moet worden gemaakt. Enkele opties

  • Maak twee installatieprogramma's, één voor x64 en één voor x86. De klant kiest de juiste, op basis van het besturingssysteem dat ze gebruikt. Simpel genoeg, je kopieert gewoon het juiste bestand.
  • Bedien beide assemblages in de GAC. Nu is het automatisch, .NET kiest de juiste voor elk type machine. Grote bedrijven zouden bijna altijd de GAC moeten gebruiken zodat ze beveiligingsupdates kunnen implementeren, ze weten niet zeker waarom Oracle dit niet doet.
  • Implementeer de assembly's in een x86- en x64-subdirectory van de installatiedirectory. U moet een AppDomain.AssemblyResolve-gebeurtenishandler schrijven die, op basis van de waarde van IntPtr.Size, de juiste map kiest.
  • Verander het doelplatform op uw EXE-project in x86. Aangezien uw code zowel op een 32-bits machine als op een 64-bits machine moet werken, is/mag er geen reden zijn om voor AnyCPU te bouwen.


  1. How to:match (zoekruimte) met (join met kolom uit andere tabel)

  2. Hoe u Execute Immediate met INTO-clausule in Oracle Database gebruikt?

  3. Toon afbeelding in Wordpress met PHP-code

  4. SQLite Node.js