Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Prism Weitergabe einer .NET Anwendung mit fremden Assemblies? (https://www.delphipraxis.net/71918-weitergabe-einer-net-anwendung-mit-fremden-assemblies.html)

Alexander 22. Jun 2006 15:54


Weitergabe einer .NET Anwendung mit fremden Assemblies?
 
Hallo,
ich habe hier eine .NET Anwendung, die verschiedene "fremde" Assemblies wie z.B. den MySQL-Connector benötigt. Die muss ich ja bei der Weitergabe mitliefern bzw. der User muss sich die von MySQL.org oder einer anderen Seite holen. So weit ist das ja klar.

Nun bietet mir Delphi die Möglichkeit im rechten Fenster unter Referenzen in dem aufklappenden Menü "Lokal kopieren" anzukreuzen (Oder im OI). Dann kopiert mir mein Delphi die benötigten DLLs in das Anwendungsverzeichnis. Dann sollte das auch auf fremden Rechnern funktionieren.
Nur stellt sich mir zuerst die Frage, ob das auch erlaubt ist, einfach die MySql.Data.dll (oder andere) mitauszuliefern!?

Das wäre die eine Möglichkeit, die andere wäre folgende:
In meiner Anwendung wird der MySQL-Connector nur dann benötigt, wenn der User das auch will. Denn der User kann verschiedene Provider wählen. Provider für Oracle und den SQL-Server bringt .NET ja automatisch mit. Wenn der User dann z.B. Oracle nimmt, braucht er den MySQL-Connector nicht.
So viel zur Theorie :mrgreen:. Doch wie bringe ich meiner Anwendung bei keine Exception zu werfen, wenn eben der MySQL-Connector nicht installiert ist :?
Ich sehe momentan nur die Möglichkeit, den Provider dynamisch zu laden und da weiß ich noch nicht, wie das gehen soll bzw. wie ich dann z.B. den MysqlCommand etc. nutzen kann.
Ich kann zwar (wenn System.Reflections eingebunden ist) mit Assembly.Load eben solche laden, aber dann weiß ich nicht weiter ;)

Mit welcher Methode mache ich das jetzt am besten?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz