Ich musste den Quellcode von Inno Media Player 0.03 kompilieren, der von mir modifiziert wurde, um ihm mit Delphi eine Cursorverdeckungsfunktion hinzuzufügen.Inkompatible Typen "LongBool" und "Integer"
habe ich den Code an die Quelle erfolgreich und versuchte erneut zu kompilieren, aber der Compiler sagt:
[DCC32 Error] MainUnit.pas (154): E2010 Inkompatible Typen: 'LongBool' und 'Integer'.
Was ist das Problem in diesem Code?
Der Code, den ich zu INNO MEDIA PLAYER hinzugefügt:
const
OATRUE = -1;
procedure TDirectShowPlayer.InitializeVideoWindow(WindowHandle: HWND; var Width,
Height: Integer);
begin
ErrorCheck(FGraphBuilder.QueryInterface(IVideoWindow, FVideoWindow));
ErrorCheck(FVideoWindow.HideCursor(OATRUE)); **<<<ERROR IS HERE<<<**
...
end;
Ich rief die IVideoWindow::HideCursor
Methode auf dem FVideoWindow
im TDirectShowPlayer.InitializeVideoWindow
.
OATRUE
Die Konstante ist eine System.Shortint
IVideoWindow.HideCursor
und ist ein LongBool
Methode.
Sind diese inkompatiblen Typen oder ist meine Version von Delphi nicht kompatibel mit diesem Code, den ich hinzugefügt habe?
Jetzt ist der Fehler verschwunden und ich kompiliert erfolgreich.Vielen Dank. Aber ich bin überrascht, warum sich mein Mauszeiger immer noch nicht vor Video versteckt? –
Sie sollten eine der Antworten als richtig auswählen, obwohl sie beide dasselbe sagen. Ihr sichtbarer Cursor ist ein anderes Problem, das in der Frage nicht wirklich behandelt wird. :) –