Biblioteka #include <mmsystem.h> nie działa z "Unitami"
Napisane: sobota, 23 grudnia 2017, 15:12
Trochę w kategorii ciekawostek niż problemu (można to obejść). Tworząc nowy unit (New->Unit), gdzie chyba najczęście gromadzi się zewnętrzna klasy i funkcje, nie można dołączyć biblioteki - #include <mmsystem.h> W przypadku starszych "Builderów" pokazuje ponad 50 błędów w pliku - mmsystem.h, natomiast w najnowszych środowiskoacj również kilkadziesiąt błędów, tyle że w pliku - mmsyscom.h. Mniej więcec coś takiego:
[bcc32 Error] mmsyscom.h(113): E2139 Declaration missing ;
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(114): E2238 Multiple declaration for 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(113): E2344 Earlier declaration of 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(114): E2139 Declaration missing ;
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(115): E2238 Multiple declaration for 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(113): E2344 Earlier declaration of 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
Co ciekawe problem mija, jeżeli zamiast nowego unita, wskaże się powstanie/dołączanie do projektu nowego "headera" (plik .h), który będzie korzystał z powyższej biblioteki (#include <mmsystem.h>) Kompilacja przebiega wtedy bez problemu.
[bcc32 Error] mmsyscom.h(113): E2139 Declaration missing ;
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(114): E2238 Multiple declaration for 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(113): E2344 Earlier declaration of 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(114): E2139 Declaration missing ;
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(115): E2238 Multiple declaration for 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
[bcc32 Error] mmsyscom.h(113): E2344 Earlier declaration of 'DWORD'
Full parser context
v_mmsystem.h(2): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsystem.h
mmsystem.h(35): #include c:\program files\embarcadero\studio\18.0\include\windows\sdk\mmsyscom.h
Co ciekawe problem mija, jeżeli zamiast nowego unita, wskaże się powstanie/dołączanie do projektu nowego "headera" (plik .h), który będzie korzystał z powyższej biblioteki (#include <mmsystem.h>) Kompilacja przebiega wtedy bez problemu.