Avatar billede winkill Nybegynder
23. august 2000 - 16:25 Der er 2 kommentarer og
1 løsning

Events

Ok først en smule forhistorie.
Jeg har lavet en dll som styrrer et antal WinSockets, og som smider indgående data i en buffer som så kan behandles af min applikation når den er klar til det.
Den del kører også som det skal.

Nu ville det jo så bare være rart hvis min dll kunne fortælle min applikation at der er modtaget data, at der er logget en ny bruger på eller lignende, men hvordan gør man det uden at programmet skal \"spørge\" dll\'en hvert andet øjeblik ???

Dll\'en er en almindelig ActiveX DLL og selve programmet er en ActiveX EXE (Standalone).
Avatar billede nolle_k Nybegynder
24. august 2000 - 09:04 #1
Hejsa!!

I dll\'en erklære du et event på følgende måde

Public Event DataReady(Data as Variant, Count as Integer etc.)

Når du så vil smide eventet skriver du bare

RaiseEvent DataReady(Data, Count)

For at modtage eventet skal du i EXE programmet eklære en variabel på følgende måde ad dll\'en


dim withevents DLL as [den dll der skal smide eventet]

Herefter i en initialze eller load funktion gøres følgende

Set DLL = new [den dll, der skal smide event]

Hvis du så vælger DLL i combox i venstre hjørne af kodevinduet, ligesom hvis du vælger en VB knap eller ligende, skulle du kunne se DataReady eventet i den combobox, der er til højre i kode vinduet!!

Nolle_K
Avatar billede winkill Nybegynder
24. august 2000 - 12:35 #2
Tak
Avatar billede nolle_k Nybegynder
24. august 2000 - 13:06 #3
Velbekomme! ;-))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester