Gemme forms i .dll filer

Tags:    delphi

Hvordan gemmer jeg en form i en .dll eller en anden fil. Jeg har nu et program hvor at når jeg trykker på en knap så åbner den et nyt program som jeg også har lavet. Jeg vil gerne have sådan at det program jeg åbner ikke bare ligger i en .exe fil, for så kan alle jo bare åbne den, den skal ligge i en fil som kun kan åbnes rigtigt igennem det første program. Jeg har prøvet de artikler der er men jeg kan ikke få dem til at virke. Så hvis du ligger inde med et færdigt eksempel på de artikler eller dare kan komme med en simpel forklaring så ville det være alletiders.

Mvh
Jesper



6 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hej Emil,

Der er et eller andet du har misforstået.

Der stå i den oprindelige beskrivelse at

>Jeg har nu et program hvor at når jeg trykker på en knap så åbner den et nyt program som
>jeg også har lavet. Jeg vil gerne have sådan at det program jeg åbner ikke bare ligger i en
>.exe fil

Det forstår jeg som at han ønsker at kalde et helt andet program som skal være placeret i dll.
Men en dll er bare en samling af procedure/funktioner man kan kalde fra sit program. Det er IKKE
et seperat program du kan køre.

Hvis du læser den artikkel du selv henviser til kan du også se at der bare er tale om nogle
procedure/funktioner man placere i en dll. Disse funktioner kan så f.eks åbne et nyt vindue og
foretage nogle ting og endelig lukke vinduet igen. Men der er stadig ikke tale om et seperat program, men blot en funktion der kan nogle ting. Du kunne somend lige så godt lave en funktion i en unit der kunne gøre det samme... og så benytte den i flere forskellige programmer.

En dll er og bliver en samling af funktioner og ikke et komplet program. Derudover så ville alle
andre også kunne kalde funktionerne i den dll man evt lavede fra deres egne programmer. Så det er der jo ikke meget beskyttelse i.


Mvh

Kristian


Jeg er enig med at en .dll ikke er et program, men der står også i den oprindelige beskrivelse:

Jeg har prøvet de artikler der er men jeg kan ikke få dem til at virke. Så hvis du ligger inde med et færdigt eksempel på de artikler eller dare kan komme med en simpel forklaring så ville det være alletiders.


Desuden hedder posten "Gemme forms i .dll filer" og ikke "Gemme programmer i .dll filer"

Jesper, du kan downloade eksemplet til artiklen Forms i DLL på http://www.udvikleren.dk/files/dllform.zip

Emil Melgaard
emil.melgaard@private.dk[Redigeret d. 05/04-02 18:18:45 af Emil]



Hvordan gemmer jeg en form i en .dll eller en anden fil. Jeg har nu et program hvor at når jeg trykker på en knap så åbner den et nyt program som jeg også har lavet. Jeg vil gerne have sådan at det program jeg åbner ikke bare ligger i en .exe fil, for så kan alle jo bare åbne den, den skal ligge i en fil som kun kan åbnes rigtigt igennem det første program. Jeg har prøvet de artikler der er men jeg kan ikke få dem til at virke. Så hvis du ligger inde med et færdigt eksempel på de artikler eller dare kan komme med en simpel forklaring så ville det være alletiders.

Mvh
Jesper


Hvis du ønsker at beskytte et program så det kun kan køres fra et af dine egne programmer vil jeg foreslå at du laver en eller anden form for simpel beskyttelse.

Det mest simple jeg kan komme i tanke om er at du fra det kaldende program sender en eller flere "hemmelige" parameter med som du så checker for i det kaldte program. Hvis det kaldte program ikke modtager de rigtige parameter starter det simpelthen ikke op. Derved sikre du at andre ikke kan køre programmet direkte.

En anden mulighed kunne være at du i det andet program checker om det første program kører.

/Kristian



Det skal helst være .dll filer. Men andre kan også bruges.

Mvh
Jesper



Det skal helst være .dll filer. Men andre kan også bruges.

Mvh
Jesper


Det er slet ikke muligt da en dll ikke er et program, men en samling af procedure/funktioner. Du kan ikke køre en dll. Du kan kalde de funktioner der er i den.

Mvh

Kristian



Det skal helst være .dll filer. Men andre kan også bruges.

Mvh
Jesper

Det er slet ikke muligt da en dll ikke er et program, men en samling af procedure/funktioner. Du kan ikke køre en dll. Du kan kalde de funktioner der er i den.

Mvh

Kristian


Jovist er det muligt.
Du kan jo se at der er skrevet en artiklel om det, du skal bare kalde på formen i dll'en fra dit program i stedet for at køre dll'en direkte.

Emil Melgaard
<a href="mailto:emil.melgaard@private.dk">emil.melgaard@private.dk</a>



Hej Emil,

Der er et eller andet du har misforstået.

Der stå i den oprindelige beskrivelse at

>Jeg har nu et program hvor at når jeg trykker på en knap så åbner den et nyt program som
>jeg også har lavet. Jeg vil gerne have sådan at det program jeg åbner ikke bare ligger i en
>.exe fil

Det forstår jeg som at han ønsker at kalde et helt andet program som skal være placeret i dll.
Men en dll er bare en samling af procedure/funktioner man kan kalde fra sit program. Det er IKKE
et seperat program du kan køre.

Hvis du læser den artikkel du selv henviser til kan du også se at der bare er tale om nogle
procedure/funktioner man placere i en dll. Disse funktioner kan så f.eks åbne et nyt vindue og
foretage nogle ting og endelig lukke vinduet igen. Men der er stadig ikke tale om et seperat program, men blot en funktion der kan nogle ting. Du kunne somend lige så godt lave en funktion i en unit der kunne gøre det samme... og så benytte den i flere forskellige programmer.

En dll er og bliver en samling af funktioner og ikke et komplet program. Derudover så ville alle
andre også kunne kalde funktionerne i den dll man evt lavede fra deres egne programmer. Så det er der jo ikke meget beskyttelse i.


Mvh

Kristian



t