🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.pascal
4 messages
4 total messages Started by Ostry kolo Mon, 12 Feb 2007 21:46
pascal i biblioeki dll
#91476
Author: Ostry kolo
Date: Mon, 12 Feb 2007 21:46
26 lines
1786 bytes
wiam serdecznie
przytocze żródło :
program Untitled;

 {$mode delphi}
uses SysUtils,Windows;
var ident:HMODULE;
    {wersja:function():Extended;}
    ver:function():String;
    {ver:ansistring;}
begin
   ident:=LoadLibrary('ścieżka ');    {umieszczenie biblioteki w
pamięci }
   if (ident <>0) then @ver := GetProcAddress(ident,'nazwa funkcji');
   if@ver<> nil then
                begin
                  writeln(ver());
                end;
   readln;
   FreeLibrary(ident);
end.

- niestety nie orzymuje wyniku z uwagi na błąd : file not open

czy mógłby ktoś podpowiedzieć mi gdzie jes błąd bo program się
kompiluje ale bląd wychodzi po uruchomieniu.
Re: pascal i biblioeki dll
#91477
Author: webmajsterek
Date: Tue, 13 Feb 2007 13:36
56 lines
2525 bytes
> wiam serdecznie
> przytocze żródło :
> program Untitled;
> 
>  {$mode delphi}
> uses SysUtils,Windows;
> var ident:HMODULE;
>     {wersja:function():Extended;}
>     ver:function():String;
>     {ver:ansistring;}
> begin
>    ident:=LoadLibrary('ścieżka ');    {umieszczenie biblioteki w
> pamięci }
^^^^^^^^^^^^^^^^^^^^^^^^
>    if (ident <>0) then @ver := GetProcAddress(ident,'nazwa funkcji');
>    if@ver<> nil then
>                 begin
>                   writeln(ver());
>                 end;
>    readln;
>    FreeLibrary(ident);
> end.
> 
> - niestety nie orzymuje wyniku z uwagi na błąd : file not open
> 
> czy mógłby ktoś podpowiedzieć mi gdzie jes błąd bo program się
> kompiluje ale bląd wychodzi po uruchomieniu.
> 

po prostu masz zla siezke do biblioteki - powinna byc w katalogu z ktorego 
jest program uruchamiany  -- zoabcz z jakiego katalogu staruje twoja aplikacji 
a, albo pelna sciezke do pliku laznie z rozszerzeniem dll .

 uses SysUtils,Windows;
 var ident:HMODULE;
     {wersja:function():Extended;}
     ver:function():String;
     {ver:ansistring;}
 begin
    ident:=LoadLibrary('ścieżka ');
    if (ident <>0) then begin 
       @ver := GetProcAddress(ident,'nazwa funkcji');
       if@ver<> nil then
                 begin
                   writeln(ver());
                 end else 
                   writeln( 'Nie ma takiej procedury');

       readln;
    end else writeln( 'Nie ma takiej biblioteki');
    FreeLibrary(ident);
 end.


-- 
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Re: pascal i biblioeki dll
#91478
Author: Łukasz 'Maly' Ostrowski
Date: Tue, 13 Feb 2007 14:58
14 lines
1263 bytes
Ostry kolo wrote:
> <ciach>
> begin
>    ident:=LoadLibrary('ścieżka ');

I jaka jest wartość ident w tym miejscu?

>    if (ident <>0) then @ver := GetProcAddress(ident,'nazwa funkcji');
>    if@ver<> nil then
> <ciach>
-- 
Pozdrawiam,
Łukasz 'Maly' Ostrowski.
http://maly.nemo.pl/ 
Re: pascal i biblioeki dll
#91479
Author: Magda S
Date: Fri, 31 Aug 2007 20:19
30 lines
1737 bytes
Ostry kolo pisze:
> wiam serdecznie
> przytocze żródło :
> program Untitled;
> 
>  {$mode delphi}
> uses SysUtils,Windows;
> var ident:HMODULE;
>     {wersja:function():Extended;}
>     ver:function():String;
>     {ver:ansistring;}
> begin
>    ident:=LoadLibrary('ścieżka ');    {umieszczenie biblioteki w
> pamięci }
>    if (ident <>0) then @ver := GetProcAddress(ident,'nazwa funkcji');
>    if@ver<> nil then
>                 begin
>                   writeln(ver());
>                 end;
>    readln;
>    FreeLibrary(ident);
> end.
> 
> - niestety nie orzymuje wyniku z uwagi na błąd : file not open
> 
> czy mógłby ktoś podpowiedzieć mi gdzie jes błąd bo program się
> kompiluje ale bląd wychodzi po uruchomieniu.
> 
UWAGA!!! Długi string jako wynik funkcji eksportowanej z biblioteki. Czy 
w DLL jest "uses SHAREMEM" ?
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads