Problem beim Einbinden von mmsystem.h (war: Fehler im BCB6 ?)



  • hallo leute

    folgendes problem:
    ich hab ein neues project angelegt. dann hab ich ne neue unit erstellen lassen.
    bei unit1 hab ich dann mit Datei->Unitheader einschließen... die neue unit miteinbezogen. wenn ich nun bei unit1.h die mmsystem.h einbinde, funktioniert alles gut. wenn ich das aber in unit2.h mache, gibts fehler:

    [C++ Fehler] mmsystem.h(103: E2257 , erwartet.

    dabei macht er dann die mmsystem.h auf und springt mit dem caret

    typedef UINT MMVERSION;

    vor den ";".

    das kann doch nicht normal sein, das ich die mmsystem.h nur in die unit1.h einbinden kann und nicht in die unit2 oder etwa doch ???

    hoffe mir kann da jemand helfen

    Meep Meep

    Edit:
    Bitte aussagekräftige Überschriften wählen. Danke!



  • hallo

    jetzt bin ich draufgekommen, das er den fehler nicht mehr bringt, wenn ich die <mem.h> bzw. <string.h> "nicht" miteinbinde.

    aber die brauch ich fuer memset usw.
    langsam krieg ich wirklich die krise mit dem zeugs. woran liegt das nur ?

    Meep Meep



  • nun wirds immer lustiger..

    frueher wie ich die mem.h ausgeklammert hatte, hat er anstandlos kompiliert.
    nun hab ich es ganz rauschgeloescht und hab die memset und memcpy schnell selbst nachprogrammiert und nun gehts doch wieder nicht.
    es funktioniert wieder nur wenn ich die mmsystem.h in die Unit1 inkludiere.

    😞

    BCB hab ich auch schon neugestartet. bring aber auch nix

    Meep Meep



  • hab bermerkt, das ich die mmsystem.h nur dann fehlerfrei einbinden kann, wenn ich auch die vcl.h einbinde. muß ich nun in jede header, wo auch die mmsystem drinnen is, die vcl.h reinschieben ? auch wenn ich das drum garnicht brauche ?

    Meep Meep



  • Als WinAPI-Header wird mmsystem.h vermutlich Funktionen aus windows.h o.ä. benötigen, welche ja durch vcl.h automatisch eingebunden wird. Ansonsten hilft es bei Include-problemen mitunter, die Reihenfolge der Includes zu variieren.



  • hola jansen

    hab schon alle variationen durchprobiert, aber leuder nix passendes gefunden.
    was mich dabei n bisschen verwundert is, das niergendwo geschrieben steht, das man die vcl.h oder die windows.h includiert haben MUSS. zumindest hab ich nix gefunden. was mich daran auch fasziniert ist, das er meint das er bei dem typdef noch nen parameter braucht.

    scheinbar gehts wirklich nicht anders.

    Meep Meep



  • Datei -> Neu -> Konsolenassistent -> "C++" angewählt -> alles ausser "Konsolenanwendung" abgewählt -> OK

    An den Anfang von Unit1.cpp:
    #include <mmsystem.h>
    F9 -> [C++ Error] mmsystem.h(103): E2257 , expected

    An den Anfang von Unit1.cpp, vor ...mmsystem.h:
    #include <windows.h>
    F9 -> Programm läuft


Anmelden zum Antworten