tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
712
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Kostas5813 Kostas5813 ist offline Grünschnabel
    Registriert seit
    Sep 2010
    Beiträge
    3
    Hallo Zusammen,

    ich habe eine Anwendung mit VS2008 C# geschrieben für ein Windows CE 6.0 Device.
    Funktioniert alles wunderbar. Vom Device Hersteller habe ich ein Stück c-code bekommen,
    das sind zwei Methoden um das Backlight Ein-/Auszuschalten. Ein Kollege hat mir daraus
    eine C-DLL mit VS2010 erzeugt.
    Die DLL kann ich einwandfrei aufrufen wenn ich eine WinForm Anwendung schriebe für PCs.
    Wenn ich jedoch die gleiche C-DLL aus einem Win CE Projekt aufrufe, bekomme ich die Fehlermeldung
    Can't find PInvoke DLL "Backlight.dll"
    Die DLL habe ich in das Programmverzeichnis aber auch in Windows kopiert. Die DLL ist also definitiv da. Ich vermute das hat was mit der C-DLL zu tun.

    Deshalb meine Frage, kann es sein dass eine C-DLL anders kompiliert werden muss für Windows CE Geräte? meine Platform ist übrigens X86 nicht ARM!

    Code :
    1
    2
    
    [DllImport("Backlight.dll", EntryPoint = "BackLightOFF")]
    public extern static void BackLightOFF();

    Gruß Kostas
     

  2. #2
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.
    Zitat Zitat von Kostas5813 Beitrag anzeigen
    Deshalb meine Frage, kann es sein dass eine C-DLL anders kompiliert werden muss für Windows CE Geräte? meine Platform ist übrigens X86 nicht ARM!
    Die Antwort ist: ja. Windows CE verwendet eine eigene Laufzeitbibliothek, manche Funktionen aus der (üblichen) Laufzeitbibliothek gibt es nicht unter Windows CE.

    Man muß das entsprechende Windows (Mobile) SDK installieren um Applikationen / Bibliotheken für Windows CE mit dem Visual Studio erstellen zu können.

    Siehe z.B. http://www.techfiles.de/frankpr/Soft...entwickeln.htm

    Gruß
    Geändert von deepthroat (10.09.10 um 11:32 Uhr)
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  3. #3
    Kostas5813 Kostas5813 ist offline Grünschnabel
    Registriert seit
    Sep 2010
    Beiträge
    3
    Super Danke.
    Ich habe jetzt etwas gesucht und bin mir nicht sicher was ich genau benötige.
    Es gibt ein "Windows Embedded CE 6.0 Evaluation Edition" ist vermutlich der Platform Builder.

    Eigentlich will ich nur die eine einzige DLL erzeugen und nicht ein komplettes Win CE Image erzeugen.
    Anscheinend ist das SDK alleine nicht downloadbar sondern bestandteil vom Platform Builder.

    Ist das so?
     

  4. #4
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Zitat Zitat von Kostas5813 Beitrag anzeigen
    Super Danke.
    Ich habe jetzt etwas gesucht und bin mir nicht sicher was ich genau benötige.
    Es gibt ein "Windows Embedded CE 6.0 Evaluation Edition" ist vermutlich der Platform Builder.

    Eigentlich will ich nur die eine einzige DLL erzeugen und nicht ein komplettes Win CE Image erzeugen.
    Anscheinend ist das SDK alleine nicht downloadbar sondern bestandteil vom Platform Builder.

    Ist das so?
    Das SDK gibt's hier: http://www.microsoft.com/downloads/e...displaylang=en

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  5. #5
    Kostas5813 Kostas5813 ist offline Grünschnabel
    Registriert seit
    Sep 2010
    Beiträge
    3
    Dieses SDK habe ich auch schon gefunden, jedoch ist das dass Winidows Mobile 6.0 SDK.
    Auf dem Gerät ist nicht das Mobile 6.0 sondern CE 6.0.
    Oder ist das SDK für beides gedacht?
     

  6. #6
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Zitat Zitat von Kostas5813 Beitrag anzeigen
    Dieses SDK habe ich auch schon gefunden, jedoch ist das dass Winidows Mobile 6.0 SDK.
    Auf dem Gerät ist nicht das Mobile 6.0 sondern CE 6.0.
    Oder ist das SDK für beides gedacht?
    Hm, nein das scheinen zwei verschiedene Paar Schuhe zu sein...

    Anscheinend mußt du doch den Platform Builder verwenden..

    \edit: Vergiss das. Du brauchst explizit für dein Gerät das entsprechende SDK vom Hersteller.

    Zitat Zitat von http://msdn.microsoft.com/de-de/library/aa907963%28en-us%29.aspx
    An SDK for Windows Embedded CE is created by the OEM of a target device. It must provide a set of APIs that a software developer can use to develop software applications for the target device. An SDK may provide APIs that were imported from Platform Builder for CE 6.0 or custom APIs that are developed by the OEM. Information about APIs that were imported from Platform Builder for CE 6.0 is available in the CE 6.0 documentation.
    Gruß
    Geändert von deepthroat (10.09.10 um 13:09 Uhr)
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 11.10.10, 15:14
  2. Wann werden die As-Dateien kompiliert ?
    Von Nervensache im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 28.03.08, 22:48
  3. Allegro kann nicht kompiliert werden!!
    Von Drache2 im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 24.09.07, 22:15
  4. Antworten: 1
    Letzter Beitrag: 30.11.04, 21:53
  5. [MySQL] Wie muss eine SubQuery geschrieben werden?
    Von Romsl im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 13.09.04, 12:46