- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 7 von 7

Thema: Problem mit Quasitreiber im Selbstbauversuch C# mit .NET

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    den gibts in c# nicht mehr, .net nimmt mir freundlicherweise die ganzen entrypointdefinitionen ab!

    Das Problem tritt interessanterweise nur dann auf, wenn ich eine DLL versuche doppelt zu laden ... ich habe bis jetzt keine Idee wie ich genau das verhindern kann!

    Wenn ich die abgeleitete DLL direkt lade funktioniert der cast wunderbar, wenn ich dann aber irgendwann einmal die Basis DLL doppelt geladen habe(verklickt oder eben provoziert), kann er nichtmehr casten!

    Der Fehler basiert allerdings auf dem Fehler im ersten Post, sobald ich 2 mal die Basis-DLL geladen habe kann er nichtmehr auf die Basisklasse runtercasten!
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    okay, sry für doppelpost aber ich habs gelöst ^^

    ich musste zwar komplett über die reflections-API gehen, was mir einige scherereien besorgt hat, aber da ich das alles nur in der Basisklasse einmal tippen muss iss mir das Sch***egal (selbstzensiert) ^^

    Ich erkläre nur eben den Weg, den Code zu posten wäre vll. etwas krass ^^ aber wenn Bedarf besteht einfach melden, ich heb sowas ewig auf ^^

    Ich rufe in Labview die DLL auf,
    erzeuge mir ein Objekt der Basisklasse,
    rufe die load-Methode auf,
    übergeb ihr den Pfad zur abgeleiteten DLL,
    Suche im Verzeichnis der abgeleiteten DLL nach der Basis-DLL (um sie über Reflections zu öffnen),
    prüfe ob die DLL bereits geladen wurde und hole sie ggf. aus dem cache ODER
    öffne dann die abgeleitete DLL über Reflections, prüfe ob es die Basis-DLL ist und weise sie ggf. ab, ODER lade die neue DLL in den cache
    dann caste ich sie noch auf die Basisklasse herunter (klappt jetzt, weil ich die base-dll nur über reflection lade)

    über die anfangs angelegte basis-Instanz kann ich dann über die public Methoden indirekt auf die abgeleiteten Funktionen zugreifen!
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    shedepe
    Gast
    Bei solchen C# spezifischen Fragen lohnt sich immer ein Blick auf www.mycsharp.de .Ich denke mal dass man dir dort eher weiter helfen kann als hier.
    Ich könnte mir vorstellen, dass wenn du die Dll zwei mal geladen hast, dass die Reflection Probleme hat verschiedene Verweise aufzulösen, da nun [A] und [B] zur Verfügung stehen in denen allerdings die gleichen Klassen usw. definiert sind.

    EDIT: Gut wenn dus selber gelöst hast. Ich hätte noch interesse am Code

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    schick ich dir morgen wenn ich wieder am rechner sitze flüster mir mal ne mail, weil das relativ viel text iss hier als code
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  5. #5
    shedepe
    Gast
    Häng es doch einfach als Txt oder als .cs datei in den Anhang. Ich werd dir trotzdem mal meine Mail per PN schicken

Ähnliche Themen

  1. Seismograph Selbstbauversuch
    Von v-robot im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 5
    Letzter Beitrag: 10.09.2011, 14:03
  2. ATMega32 UART problem --> Problem gelöst
    Von ChristophB im Forum C - Programmierung (GCC u.a.)
    Antworten: 3
    Letzter Beitrag: 12.03.2010, 18:45
  3. Problem mit Atmega644P Erkennung (Bascom-Versions-Problem)
    Von Rohbotiker im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 11.08.2008, 18:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests