/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
DLL-fil + Form
Fra : DENNIS LARSEN


Dato : 15-01-01 15:13

Er der nogen der kan fortælle mig, hvorfor denne kode

library Profiles;

uses
SysUtils,
Classes,
DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};

PROCEDURE MakeProfiles; EXPORT;
BEGIN
DLLMainForm.Show; // Fejl -> address FD2E in module 'PROFILES.DLL'. Read
of address FFFFFFFF, men hvis jeg slette denne linje og indsætter 'Beep', så
kommer der ikke nogen fejl.
END;

EXPORTS
MakeProfiles;

begin
end.

Kan i fortælle mig hvad der går galt?

PS. Jeg kør med Delphi 4.
--

Hilsen
Dennis Larsen

ICQ: 65241472
Hjemmeside: http://hjem.get2net.dk/DennisLarsen
E-Mail: larsen.dennis@get2net.dk




 
 
Lars Bargmann (15-01-2001)
Kommentar
Fra : Lars Bargmann


Dato : 15-01-01 15:24

Formen er jo ikke created.....
Hvis du vil have din dll-form til at være en del af din applikation, bør du
i øvrigt også lave en "init" procedure, og en unload ting som du kalder
henholdsvis før og efter alt andet....
I init-tingen bør du overføre Application som parameter, og sætte dll'ens
application-variabel til at pege på denne, samtidig med at du gemmer den
originale, som du for guds skyld skal sætte tilbage før du unloader
dll'en...
Jeg tror jeg vrøvler, men håber meningen skinder lidt igennem....

Bargmann..

"DENNIS LARSEN" <larsen.dennis@get2net.dk> wrote in message
news:RAD86.195$AT1.3683@news.get2net.dk...
> Er der nogen der kan fortælle mig, hvorfor denne kode
>
> library Profiles;
>
> uses
> SysUtils,
> Classes,
> DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};
>
> PROCEDURE MakeProfiles; EXPORT;
> BEGIN
> DLLMainForm.Show; // Fejl -> address FD2E in module 'PROFILES.DLL'. Read
> of address FFFFFFFF, men hvis jeg slette denne linje og indsætter 'Beep',

> kommer der ikke nogen fejl.
> END;
>
> EXPORTS
> MakeProfiles;
>
> begin
> end.
>
> Kan i fortælle mig hvad der går galt?
>
> PS. Jeg kør med Delphi 4.
> --
>
> Hilsen
> Dennis Larsen
>
> ICQ: 65241472
> Hjemmeside: http://hjem.get2net.dk/DennisLarsen
> E-Mail: larsen.dennis@get2net.dk
>
>
>



Thomas Due (16-01-2001)
Kommentar
Fra : Thomas Due


Dato : 16-01-01 08:42

Det er ikke nødvendigt at overføre application variablen, idet en DLL
automatisk er "en del" af
den samme application som EXE programmet. Du skal bare huske Forms uniten i
din uses.

Mvh
Thomas

"Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
news:93v0ur$2ta$1@news.inet.tele.dk...
> Formen er jo ikke created.....
> Hvis du vil have din dll-form til at være en del af din applikation, bør
du
> i øvrigt også lave en "init" procedure, og en unload ting som du kalder
> henholdsvis før og efter alt andet....
> I init-tingen bør du overføre Application som parameter, og sætte dll'ens
> application-variabel til at pege på denne, samtidig med at du gemmer den
> originale, som du for guds skyld skal sætte tilbage før du unloader
> dll'en...
> Jeg tror jeg vrøvler, men håber meningen skinder lidt igennem....
>
> Bargmann..
>
> "DENNIS LARSEN" <larsen.dennis@get2net.dk> wrote in message
> news:RAD86.195$AT1.3683@news.get2net.dk...
> > Er der nogen der kan fortælle mig, hvorfor denne kode
> >
> > library Profiles;
> >
> > uses
> > SysUtils,
> > Classes,
> > DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};
> >
> > PROCEDURE MakeProfiles; EXPORT;
> > BEGIN
> > DLLMainForm.Show; // Fejl -> address FD2E in module 'PROFILES.DLL'.
Read
> > of address FFFFFFFF, men hvis jeg slette denne linje og indsætter
'Beep',
> så
> > kommer der ikke nogen fejl.
> > END;
> >
> > EXPORTS
> > MakeProfiles;
> >
> > begin
> > end.
> >
> > Kan i fortælle mig hvad der går galt?
> >
> > PS. Jeg kør med Delphi 4.
> > --
> >
> > Hilsen
> > Dennis Larsen
> >
> > ICQ: 65241472
> > Hjemmeside: http://hjem.get2net.dk/DennisLarsen
> > E-Mail: larsen.dennis@get2net.dk
> >
> >
> >
>
>



Lars Bargmann (16-01-2001)
Kommentar
Fra : Lars Bargmann


Dato : 16-01-01 10:02

Nope....
Jeg har dog ikke testes med statisk loading, men ved dynamisk loading vil
der faktisk eksistere 2 application-variable.
En til app'en, og en til dll'en. Dette har dog ikke den store betydning,
udover det kosmetiske...
En form der vises fra dll'en får sin egen "knap" på taskbar'en, og ligner
derfor IKKE en del af app'en...


"Thomas Due" <noname@nowhere.net> wrote in message
news:940u28$pvd$1@news.inet.tele.dk...
> Det er ikke nødvendigt at overføre application variablen, idet en DLL
> automatisk er "en del" af
> den samme application som EXE programmet. Du skal bare huske Forms uniten
i
> din uses.
>
> Mvh
> Thomas
>
> "Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
> news:93v0ur$2ta$1@news.inet.tele.dk...
> > Formen er jo ikke created.....
> > Hvis du vil have din dll-form til at være en del af din applikation, bør
> du
> > i øvrigt også lave en "init" procedure, og en unload ting som du kalder
> > henholdsvis før og efter alt andet....
> > I init-tingen bør du overføre Application som parameter, og sætte
dll'ens
> > application-variabel til at pege på denne, samtidig med at du gemmer den
> > originale, som du for guds skyld skal sætte tilbage før du unloader
> > dll'en...
> > Jeg tror jeg vrøvler, men håber meningen skinder lidt igennem....
> >
> > Bargmann..
> >
> > "DENNIS LARSEN" <larsen.dennis@get2net.dk> wrote in message
> > news:RAD86.195$AT1.3683@news.get2net.dk...
> > > Er der nogen der kan fortælle mig, hvorfor denne kode
> > >
> > > library Profiles;
> > >
> > > uses
> > > SysUtils,
> > > Classes,
> > > DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};
> > >
> > > PROCEDURE MakeProfiles; EXPORT;
> > > BEGIN
> > > DLLMainForm.Show; // Fejl -> address FD2E in module 'PROFILES.DLL'.
> Read
> > > of address FFFFFFFF, men hvis jeg slette denne linje og indsætter
> 'Beep',
> > så
> > > kommer der ikke nogen fejl.
> > > END;
> > >
> > > EXPORTS
> > > MakeProfiles;
> > >
> > > begin
> > > end.
> > >
> > > Kan i fortælle mig hvad der går galt?
> > >
> > > PS. Jeg kør med Delphi 4.
> > > --
> > >
> > > Hilsen
> > > Dennis Larsen
> > >
> > > ICQ: 65241472
> > > Hjemmeside: http://hjem.get2net.dk/DennisLarsen
> > > E-Mail: larsen.dennis@get2net.dk
> > >
> > >
> > >
> >
> >
>
>



Thomas Due (18-01-2001)
Kommentar
Fra : Thomas Due


Dato : 18-01-01 08:15

Undskyld,

Jeg bruger som regel statisk loading, nok nærmest fordi det er det
nemmeste, og det opfylder mine behov. I sådan et tilfælde peger application
variablen på .exe programmet.

Jeg havde lykkelig glemt det med dynamisk loading, og der vil jeg faktisk
gerne tro at der er to variabler.

Mvh
Thomas

"Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
news:9412f9$ar7$1@news.inet.tele.dk...
> Nope....
> Jeg har dog ikke testes med statisk loading, men ved dynamisk loading vil
> der faktisk eksistere 2 application-variable.
> En til app'en, og en til dll'en. Dette har dog ikke den store betydning,
> udover det kosmetiske...
> En form der vises fra dll'en får sin egen "knap" på taskbar'en, og ligner
> derfor IKKE en del af app'en...
>
>
> "Thomas Due" <noname@nowhere.net> wrote in message
> news:940u28$pvd$1@news.inet.tele.dk...
> > Det er ikke nødvendigt at overføre application variablen, idet en DLL
> > automatisk er "en del" af
> > den samme application som EXE programmet. Du skal bare huske Forms
uniten
> i
> > din uses.
> >
> > Mvh
> > Thomas
> >
> > "Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
> > news:93v0ur$2ta$1@news.inet.tele.dk...
> > > Formen er jo ikke created.....
> > > Hvis du vil have din dll-form til at være en del af din applikation,
bør
> > du
> > > i øvrigt også lave en "init" procedure, og en unload ting som du
kalder
> > > henholdsvis før og efter alt andet....
> > > I init-tingen bør du overføre Application som parameter, og sætte
> dll'ens
> > > application-variabel til at pege på denne, samtidig med at du gemmer
den
> > > originale, som du for guds skyld skal sætte tilbage før du unloader
> > > dll'en...
> > > Jeg tror jeg vrøvler, men håber meningen skinder lidt igennem....
> > >
> > > Bargmann..
> > >
> > > "DENNIS LARSEN" <larsen.dennis@get2net.dk> wrote in message
> > > news:RAD86.195$AT1.3683@news.get2net.dk...
> > > > Er der nogen der kan fortælle mig, hvorfor denne kode
> > > >
> > > > library Profiles;
> > > >
> > > > uses
> > > > SysUtils,
> > > > Classes,
> > > > DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};
> > > >
> > > > PROCEDURE MakeProfiles; EXPORT;
> > > > BEGIN
> > > > DLLMainForm.Show; // Fejl -> address FD2E in module
'PROFILES.DLL'.
> > Read
> > > > of address FFFFFFFF, men hvis jeg slette denne linje og indsætter
> > 'Beep',
> > > så
> > > > kommer der ikke nogen fejl.
> > > > END;
> > > >
> > > > EXPORTS
> > > > MakeProfiles;
> > > >
> > > > begin
> > > > end.
> > > >
> > > > Kan i fortælle mig hvad der går galt?
> > > >
> > > > PS. Jeg kør med Delphi 4.
> > > > --
> > > >
> > > > Hilsen
> > > > Dennis Larsen
> > > >
> > > > ICQ: 65241472
> > > > Hjemmeside: http://hjem.get2net.dk/DennisLarsen
> > > > E-Mail: larsen.dennis@get2net.dk
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Lars Bargmann (18-01-2001)
Kommentar
Fra : Lars Bargmann


Dato : 18-01-01 10:54

Hehe, det er faktisk lidt mere besværligt end som så....
Der er også to session-variable, for eksempel...
Så man skal holde tungen lige i munden, hvis man begynder at lave "plug-in"
systemer, der benytter dll'er...


"Thomas Due" <noname@nowhere.net> wrote in message
news:94656r$1gg$1@news.inet.tele.dk...
> Undskyld,
>
> Jeg bruger som regel statisk loading, nok nærmest fordi det er det
> nemmeste, og det opfylder mine behov. I sådan et tilfælde peger
application
> variablen på .exe programmet.
>
> Jeg havde lykkelig glemt det med dynamisk loading, og der vil jeg faktisk
> gerne tro at der er to variabler.
>
> Mvh
> Thomas
>
> "Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
> news:9412f9$ar7$1@news.inet.tele.dk...
> > Nope....
> > Jeg har dog ikke testes med statisk loading, men ved dynamisk loading
vil
> > der faktisk eksistere 2 application-variable.
> > En til app'en, og en til dll'en. Dette har dog ikke den store betydning,
> > udover det kosmetiske...
> > En form der vises fra dll'en får sin egen "knap" på taskbar'en, og
ligner
> > derfor IKKE en del af app'en...
> >
> >
> > "Thomas Due" <noname@nowhere.net> wrote in message
> > news:940u28$pvd$1@news.inet.tele.dk...
> > > Det er ikke nødvendigt at overføre application variablen, idet en DLL
> > > automatisk er "en del" af
> > > den samme application som EXE programmet. Du skal bare huske Forms
> uniten
> > i
> > > din uses.
> > >
> > > Mvh
> > > Thomas
> > >
> > > "Lars Bargmann" <lars.bargmann@mail.tele.dk> wrote in message
> > > news:93v0ur$2ta$1@news.inet.tele.dk...
> > > > Formen er jo ikke created.....
> > > > Hvis du vil have din dll-form til at være en del af din applikation,
> bør
> > > du
> > > > i øvrigt også lave en "init" procedure, og en unload ting som du
> kalder
> > > > henholdsvis før og efter alt andet....
> > > > I init-tingen bør du overføre Application som parameter, og sætte
> > dll'ens
> > > > application-variabel til at pege på denne, samtidig med at du gemmer
> den
> > > > originale, som du for guds skyld skal sætte tilbage før du unloader
> > > > dll'en...
> > > > Jeg tror jeg vrøvler, men håber meningen skinder lidt igennem....
> > > >
> > > > Bargmann..
> > > >
> > > > "DENNIS LARSEN" <larsen.dennis@get2net.dk> wrote in message
> > > > news:RAD86.195$AT1.3683@news.get2net.dk...
> > > > > Er der nogen der kan fortælle mig, hvorfor denne kode
> > > > >
> > > > > library Profiles;
> > > > >
> > > > > uses
> > > > > SysUtils,
> > > > > Classes,
> > > > > DLLMainFormUnit1 in 'DLLMainFormUnit1.pas' {DLLMainForm};
> > > > >
> > > > > PROCEDURE MakeProfiles; EXPORT;
> > > > > BEGIN
> > > > > DLLMainForm.Show; // Fejl -> address FD2E in module
> 'PROFILES.DLL'.
> > > Read
> > > > > of address FFFFFFFF, men hvis jeg slette denne linje og indsætter
> > > 'Beep',
> > > > så
> > > > > kommer der ikke nogen fejl.
> > > > > END;
> > > > >
> > > > > EXPORTS
> > > > > MakeProfiles;
> > > > >
> > > > > begin
> > > > > end.
> > > > >
> > > > > Kan i fortælle mig hvad der går galt?
> > > > >
> > > > > PS. Jeg kør med Delphi 4.
> > > > > --
> > > > >
> > > > > Hilsen
> > > > > Dennis Larsen
> > > > >
> > > > > ICQ: 65241472
> > > > > Hjemmeside: http://hjem.get2net.dk/DennisLarsen
> > > > > E-Mail: larsen.dennis@get2net.dk
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste