German Andere DLL

Discussion in 'German Forum' started by Bobbes, Dec 1, 2007.

  1. Bobbes

    Bobbes Active Member Licensed User

    Hallo Leute Hallo Specci48,

    Ich habe von Conrad ein USB-Relaisplatine, die Digitale und Analoge Ein-und Ausgänge. Gut und schön zum Programmieren dieser Schaltung ist auch eine DLL-Datei dabei fürdie Anweisungen der jeweiligen Ein- und Ausgängen.
    Diese DLL ist für VB 2005 geschrieben, gibt es die Möglichkeit diese DLL-Datei auch im Basic4PPC umzuwandeln oder überhaupt zu benutzen.

    Gruß
    Bobbes
     
  2. Heinz

    Heinz Active Member Licensed User

    Wenn sie nicht für .NET geschrieben ist, hast du wohl keine
    Chance. Normale DLLs funktionieren in B4PPC nicht.
     
  3. specci48

    specci48 Well-Known Member Licensed User

    Hallo Bobbes,

    generell gibt es zwei Möglichkeiten:
    1. Du programmierst die kompletten Funktionen einer dll in .Net nach. Da man aber i.d.R. die Source der Ursprungs-Dll nicht besitzt, gestaltet sich diese Variante relativ schwierig... ;)
    2. Du programmierst eine Wrapper-Dll

    Die erste Variante hat den Vorteil, dass man die Dll gleich zur direkten Verwendung für Basic4ppc schreiben kann. Es ist also nur eine Dll mit dem eigentlichen Programm zu verteilen, weil .Net selbst ja bereits auf dem Gerät installiert sein muss.
    In der zweiten Varinate sind hat man nachher zwei benötigte Dlls, die Originale und den Wrapper. Der Wrapper kapselt die originalen Methodenaufrufe so, dass sie durch Basic4ppc verwendet werden können. Man programmiert z.B. eine Methode .New1 (für Basic4ppc), die ihrerseits eine Objektinstanz der originalen Dll erzeugt. Ähnliches macht man dann mit sämtlichen anderen gewünschten Methoden. Ein Beispiel hierfür ist z.B. die FMOD.dll, die zuätzlich zu den originalen FMOD Bibliothen installiert werden muss.

    Um selbst eine Dll zu scheiben benötigt man Visual Studio 2003 oder 2005 (professional version!). Alternativ geht das auch mit dem kostenlosen SharpDevelop. Siehe http://www.basic4ppc.com/forum/showthread.php?t=35&highlight=library

    Konkrete Hilfe für die Umsetzung kann ich allerdings nicht bieten, da ich so etwas selbst noch nicht gemacht habe. :sign0013:
    Mit etwas Glück könnten Dir aber Filippo und alfcen hier ein wenig weiterhelfen, die haben beide schon Erfahrung damit.


    specci48
     
  4. Filippo

    Filippo Expert Licensed User

    Hallo Bobbes,

    lade doch deine DLL hoch, ich versuche dann eine neue DLL zu schreiben.

    Ciao,
    Filippo
     
  5. Bobbes

    Bobbes Active Member Licensed User

    Hallo und guten Abend,

    ihr sein wirklich die besten.

    Ich habe mir das mal mit der Source-Geschichte angesehen, daß hätte ich nie hingekriegt.

    Vielen Dank schon mal im voraus

    Gruß Bobbs
     
  6. Bobbes

    Bobbes Active Member Licensed User

    Datei vergessen.
    so jetzt aber
     
  7. Filippo

    Filippo Expert Licensed User

    Hallo Bobbes,

    kannst du das Programm wo diese DLL verwendet auch hoch laden?
    Ich brauche es damit ich überhaupt weis was für Parameter übergeben werden und zum testen.

    PS. es ist wirklich nicht einfach die richtige Funktionen zu finden, es gibt mehr als 100 Funktionen und ich habe keine Ahnung was die alles machen.:confused:

    Ciao,
    Filippo
     
  8. Bobbes

    Bobbes Active Member Licensed User

    Hallo Filippo,
    es tut mir leid, daß ich dir so viel Mühe mache:sign0013:
    Die DLL ist für ein USB-Relais Board. Dieses Board hat digitale und analoge Ein- und Ausgänge.
    Hier ist nur ein Demo Programm dabei, daß aber alle Funktionen beinhaltet.
    ´
    Gruß Bobbes

    P.S.: Ich sehen gerade, daß die Zip Datei 1,5 MB hat. vieleicht reicht dir ja die Manual-PDF. Sonst muß Dirs per e-Mail schicken.
     
  9. Filippo

    Filippo Expert Licensed User

    Hallo Bobbes,

    es tut mir leid aber ich komme einfach nicht so richtig weiter.
    Ich habe zwar eine DLL erzeugt aber die funktioniert nur auf dem Desktop und auch nicht ganz fehlerfrei.:sign0148:
    Am PPC kommt nur die Fehlermeldung das die DLL "K8055D.dll" nicht gefunden wird und dann funktioniert gar nichts.
    Ich habe in der Zip-Datei ein Basic4ppc-Beispiel gepackt.
    Den SharpDevelop-Projekt muss ich in den zweiten Thread packen.
    Du kannst jetzt selber damit spielen/testen. Ich hoffe das du damit weiter kommst.

    Ciao,
    Filippo

    PS. weitere fragen kannst du mir über die Private Messages senden.
     
  10. Filippo

    Filippo Expert Licensed User

    Hallo Bobbes,

    ich habe dir eine Private-Messages gesendet.
     
Loading...