Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#13

AW: DLL ignorieren wenn nicht im Pfad

  Alt 3. Jul 2013, 10:17
Viel interessanter finde ich die Frage, was passiert, wenn die DLL die entsprechende Routine gar nicht exportiert. Mit GetProcAddress erhalte ich einen Nil-Pointer, aber bei Delayed Loading?
Wie schon gesagt man muss nicht absichtlich exeption generieren..

Das reicht mir so für die eine function

  BASS_WASAPI_GetData : function(buffer: Pointer; length: DWORD): DWORD;
Delphi-Quellcode:
  if FileExists(ExtractFilePath(paramstr(0)) + basswasapi) then
  begin
    WasabiHandle := LoadLibrary(basswasapi);
    if WasabiHandle <> 0 then
    begin
      @BASS_WASAPI_GetData := GetProcAddress(WasabiHandle, 'BASS_WASAPI_GetData');
      if not Assigned (BASS_WASAPI_GetData) then
      begin
        ShowMessage('"Dynamic load"' + #13#10 + 'loading.. function BASS_WASAPI_GetData fail');
        Halt;
      end;
    end;
  end;
gruss

Geändert von EWeiss ( 3. Jul 2013 um 10:20 Uhr)
  Mit Zitat antworten Zitat