AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Fehler beim Benutzen von DLL Procedure

Ein Thema von Lucifer · begonnen am 21. Jun 2008 · letzter Beitrag vom 21. Jun 2008
 
Benutzerbild von Lucifer
Lucifer

Registriert seit: 29. Mär 2007
62 Beiträge
 
#1

Fehler beim Benutzen von DLL Procedure

  Alt 21. Jun 2008, 14:16
Hallo.



Ich habe ein Problem wenn ich eine Procedure benutze welche ich in einer DLL eingetragen habe.
Wenn ich die Procedure in der Unit des Programms deklariere und definiere dann funktioniert alles problemlos.

Wenn ich sie aber über eine DLL benutze bekomme ich eine Fehlermeldung.

das ist die DLL

Delphi-Quellcode:
library map;

{ Important note about DLL memory management: ShareMem must be the
  first unit in your library's USES clause AND your project's (select
  Project-View Source) USES clause if your DLL exports any procedures or
  functions that pass strings as parameters or function results. This
  applies to all strings passed to and from your DLL--even those that
  are nested in records and classes. ShareMem is the interface unit to
  the BORLNDMM.DLL shared memory manager, which must be deployed along
  with your DLL. To avoid using BORLNDMM.DLL, pass string information
  using PChar or ShortString parameters. }


uses
  SysUtils,
  Grids,
  StdCtrls,
  Classes;

{$R *.res}

procedure LoadStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
var
  f: TextFile;
  iTmp, i, k: Integer;
  strTemp: String;
begin
  AssignFile(f, FileName);
  Reset(f);
  with StringGrid do
  begin
    // Get number of columns
    Readln(f, iTmp);
    ColCount := iTmp;
    // Get number of rows
    Readln(f, iTmp);
    RowCount := iTmp;
    // loop through cells & fill in values
    for i := 0 to ColCount - 1 do
      for k := 0 to RowCount - 1 do
      begin
        Readln(f, strTemp);
        Cells[i, k] := strTemp;
      end;
  end;
  CloseFile(f);
end;


exports
  LoadStringGrid;

begin

end.
und ich benutz sie so:

Delphi-Quellcode:

...

procedure LoadStringGrid(StringGrid: TStringGrid; const FileName: TFileName);
external 'map.dll'

...

LoadStringGrid(frmMapMv.sgMap, land+'.mp');
in land steht nur welche datei geladen werden muss.

Die Fehlermeldung ist
Zitat:
Invalid Pointer Operation
Im Attachment liegen Bilder zu den Errors
Angehängte Grafiken
Dateityp: jpg error2_150.jpg (6,2 KB, 5x aufgerufen)
Dateityp: jpg error1_532.jpg (18,5 KB, 7x aufgerufen)
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz