Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#1

Doppeldeutiger Aufruf

  Alt 16. Jun 2011, 16:31
Fehler zu bereinigen?
Habe da meine Zweifel da ich nicht in der SysUtils rummachen kann oder?

Zitat:
[DCC Fehler] MidiOut.pas(268): E2251 Doppeldeutiger überladener Aufruf von 'StrMove'
SysUtils.pas(7723): Verwandet Methode: function StrMove(PAnsiChar; const PAnsiChar; Cardinal): PAnsiChar;
SysUtils.pas(7729): Verwandet Methode: function StrMove(PWideChar; const PWideChar; Cardinal): PWideChar;
Delphi-Quellcode:
procedure TMidiOutput.PutLong(TheSysex: Pointer; msgLength: Word);
{ Notes: This works asynchronously }
var
  MyMidiHdr: TMyMidiHdr;
begin
  { Initialize the header and allocate buffer memory }
  MyMidiHdr := TMyMidiHdr.Create(msgLength);
  StrMove(MyMidiHdr.SysexPointer, TheSysex, msgLength);
  { Store the MyMidiHdr address in the header so we can find it again quickly }
  MyMidiHdr.hdrPointer^.dwUser := DWORD(MyMidiHdr);
  { Get MMSYSTEM's blessing for this header }
  FError := midiOutPrepareHeader(FMidiHandle, MyMidiHdr.hdrPointer, sizeof(TMIDIHDR));
  if Ferror > 0 then
    raise EMidiOutputError.Create(MidiIOErrorString(False, FError));
  { Send it }
  FError := midiOutLongMsg(FMidiHandle, MyMidiHdr.hdrPointer, sizeof(TMIDIHDR));
  if FError > 0 then
    raise EMidiOutputError.Create(MidiIOErrorString(False, FError));
end;
gruss
  Mit Zitat antworten Zitat