mikrocontroller.net

Forum: PC-Programmierung Welches C++ für Treiberprogrammierung unter Windows?


Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

kann mir einer von Euch sagen, ab welchem Visual C++ 2005
Treiberprogrammierung möglich ist?

Experss Edition, Standard Edition oder erst ab der Professionl
Edition?

Danke,
Bernd

Autor: Manuel B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(entfernt)

Autor: Christoph __ (chris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Um eher auf den OP einzugehen:
Die Expressversion sollte allemal reichen. Wo du aber kaum drum
herumkommen wirst, ist das DDK (Driver Development Kit), was seit
geraumer Zeit von Microsoft nicht mehr im Internet angeboten wird.
Entweder kennst du also jemanden, der dir das geben kann (etwa
Studenten, deren Uni an MSDN-AA teilnimmt) oder du bestellst es gegen
einen kleinen Unkostenbeitrag bei Microsoft.

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ist "1.0"? Irgend eine Version?

Ich meine mich zu erinnern, mal gelesen zu haben, dass bei VC++ 6.0 das
Compilieren von Treibern sowohl mit der Standard Edition als auch der
Professional Edition möglich war, aber aber die Lizensbedingungen bei
der Standard Edition das in Umlaufbringen verbot.

Bei der Express Edition habe ich gelesen, dass man diese sogar für
kommerzielle SW nutzen darf.

Allerdings sind mir die Unterschiede zwischen Express, Standard und
Professional Edition nicht ganz klar.

Fehlt bei der Express Edition eigentlich die Windows Dokumentation
(MSDN)?

Kann die Express Edition auch DLLs erzeugen?

Ich suche eine Version mit der man alles (exe, Treiber, dll, ...)
Programmieren kann und auch veröffentlichen darf.

Danke

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe da noch etwas gefunden. Hat schon einige Fragen beantwortet,
aber auch neue aufgeworfen.

http://www.nickles.de/c/s/21-0020-369-20.htm

Da steht, dass die Express Version keine MFC unterstützt. Ist ist
eigentlich ein graphischer Resource Editor für Forms, ... enthalten?

Danke,
Bernd

Autor: Markus Sandner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
also erstmal ist JEDER C-Compiler für Treiberentwicklung geeignet, der
muss nicht von Kleinstweich stammen (OpenWatcom, GCC gehen auch ;) ).
Allerdings wird das DDK von Kleinstweich benötigt:
http://www.microsoft.com/whdc/devtools/ddk/default.mspx
Und wer in einen Treiber mit MFC rumwerkelt gehört gesteinigt !
Es reicht mir schon das ATI in den neuen Treibern .net als Frontend
benutzt, seid der Zeit gibt's öfter Hänger und ich muß dann das .net
killen was in einem kaputten Desktop und notwendigem reboot endet :(
Wenn Du kein DMA und Co benötigst, klink Dich einfach in die
DriverQueue von Windoof ein und laß die Deine I/O und IRQs verwalten,
spart 'ne Menge Arbeit ;)
Wenn Du DMA&Co benötigst hoffe ich mal Du weißt, wie man einzelne
Threads synchronisiert und das in die IRQ-Routine nur der Aufruf zum
eigentlichen Programm gehört ;)
Zum Hausgebrauch reicht es einen alten Rechner via seriellem Kabel als
Debugger zu nehmen, sonst wird's SEHR teuer ;)
Meine Erfahrung,
Markus

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Markus,

aber ich glaube wir haben uns falsch verstanden.

Das mit MFC war nicht in kombination mit den Treibern gemeint. Habe
aber noch ein altes Projekt das die MFC benötigt.

Ich bin ganz allgemein auf der Suche nach einem neuen C++ Compiler,
wobei ich mir halt alle Möglichkeiten offen halten will.

Habe in der Vergangenheit schon öfter Probleme gehabt, weil das ein
oder andere SDK nur Microsoft kompatible lib Dateien mitlieferte. Libs
sind leider Compiler Hersteller abhängig.

Die Frage ist nur, welche Version vom Microsoft C++ - Compiler für
meine zwecke die richtige ist.

Bernd

Autor: Markus Sandner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Bernd,
also wenn Du auf Microsoft Bibliotheken angewiesen bist führt kein Weg
an den orginalen Visual Studios vobei :(
Der momentane Unterschied liegt einfach im vorhandenen Source-Code und
der "Enterprise" Fähigkeit durch "Middleware" wie z.B. CORBA oder
neuerdings halt die JAVA Konkurrenz .NET.
Wenn Du nur Hobbyist bist und keine 10.000 Zeilen Programme debuggen
oder umschreiben/einbinden mußt, reicht die einfachste Version aus.
Z.B. kannst Du die hier http://www.heise.de/kiosk/special/ix/06/01/ für
14,90 bestellen. Oder Du suchst mal bei Kleinstweich in der
Developer-Ecke ;)
Und noch'n kleiner Tipp wegen den Bibliotheken, binde die bei
Treiber-Projekten sicherheitshalber statisch in Deine Programme ein
indem Du sie im VisualStudio ins Projekt mit aufnimmst !
Das erspart auch so manche andere Glitches ...
Hoffe weitergeholfen zu haben,
Markus

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So,

habe jetzt mal die VC++ Express Version installiert.

Allerdings bekomme ich immer eine komische Meldung:
"default-int" wird von C++ nicht unterstützt!?!?

Ist es nicht so, dass wenn man keinen Typ angibt immer "int"
angenomme wird. Bisher hat zumindest noch kein Compiler darüber
gemeckert.

Bernd

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ist es nicht so, dass wenn man keinen Typ angibt immer "int"
> angenomme wird.

Richtig, das ist nicht so.

> Bisher hat zumindest noch kein Compiler darüber gemeckert.

Dann waren diese Compiler entweder nicht in den richtigen Modus
geschaltet oder taugen nix. Allerdings wundert mich das, denn im
Gegensatz zu C war es in C++ noch nie erlaubt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.