Einzelnen Beitrag anzeigen

youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Programm beendet sich nicht richtig

  Alt 13. Apr 2009, 19:15
Es ist eine selbsterstellte DLL.


Hier der Quellcode

Delphi-Quellcode:

library fa;

{ Wichtiger Hinweis zur DLL-Speicherverwaltung: ShareMem muss sich in der
  ersten Unit der unit-Klausel der Bibliothek und des Projekts befinden (Projekt-
  Quelltext anzeigen), falls die DLL Prozeduren oder Funktionen exportiert, die
  Strings als Parameter oder Funktionsergebnisse übergeben. Das gilt für alle
  Strings, die von oder an die DLL übergeben werden -- sogar für diejenigen, die
  sich in Records und Klassen befinden. Sharemem ist die Schnittstellen-Unit zur
  Verwaltungs-DLL für gemeinsame Speicherzugriffe, BORLNDMM.DLL.
  Um die Verwendung von BORLNDMM.DLL zu vermeiden, können Sie String-
  Informationen als PChar- oder ShortString-Parameter übergeben. }



uses
  SysUtils,
  Math,
  ShareMem,
  Dialogs,
  Classes;

{$R *.res}

function ProzentBerechnung(Hauptwert: Extended; Nebenwert: Extended): Extended; stdcall;
begin
  if Hauptwert = 0 then
    Result:= 0
  Else
    Result:= (Nebenwert/Hauptwert)*100;
end;


function NFak(Val: Integer): INT64; stdcall;
begin
  if Val < 0 then
    raise Exception.Create('Val muss größer/gleich 0 sein.');
  if Val = 0 then
    Val := 1;
  Result := 1;
  repeat
      Begin
        Result := Result * Val;
        Dec(Val)
      End;
  until Val <= 1;
end;


function TorProzent(TorD: Extended; Tor: Integer): Extended; stdcall;
Var
  e: Extended;
  begin
    e:= 2.718281828459;
    result := power(TorD,Tor)*power(e,-TorD)/NFak(Tor);
  end;

exports
  ProzentBerechnung,
  TorProzent,
  NFak;

begin
end.
Steven
  Mit Zitat antworten Zitat