Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 10:11 Der er 13 kommentarer og
2 løsninger

Nemme DLL'er

Er der nogen der kan give mig et lille eks på hvordan jeg kan smide data fra eks TEXTBOX fra en FORM til en DLL, og behandle dem og smide dem tilbage igen????
Avatar billede venne Nybegynder
27. august 2004 - 10:52 #1
Det kommer vel an på hvad der er for en dll...
Havd er det du gerne vil lave?
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 10:58 #2
Eks
3 textboxe, TAl1, TAl2, Resultat, en knap.... trykker på knappen og den ligger de to tal sammen og smider resultatet ind i ResultatBoxen!

Det er bare lige så jeg kan se princippet i den!
Avatar billede venne Nybegynder
27. august 2004 - 11:06 #3
Dvs det er en dll du selv vil lave?
Hvad skal den kodes i? VB, C, ...?
Klassisk dll eller COM-objekt?
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 11:08 #4
VB 6.0!

Ja bare en lille DLL og en lille Form med de 3 text boxe og en knap!
Avatar billede martin_moth Mester
27. august 2004 - 11:11 #5
Avatar billede martin_moth Mester
27. august 2004 - 11:13 #6
Citat fra ovenstående:

Først skal du lave en klasse, som skal fungere som forside af DLL'en. I denne klasse skal du lave de Sub-rutimer, som du gerne vil have tilgænglig i DLL'en. Husk at de rutimer som skal være synlige, skal hedde Public Sub/functions og dem som ikke skal kunne startes/vises udmiddelbart fra DLL'en, men skal bruges til interne rutimer, skal være Private Sub/functions.

Herefter kan du begynde med at tilføje forms m.m. Din rutime i en VB DLL vil så komme til at se således ud:

Public Function Beregn(byval Ta1 as integer, byval Tal2 as integer) as interger
    'beregn tal1 og tal2
    dim NytTal as integer
    NytTal = Tal1 + Tal2
Beregn = NytTal
Unload me
end function   

Nu kompilerer du dll'en. Ovre i et andet visual basic program, skal du under referencer, finde din DLL. Herefter kan du blot lave følge sub i din program.

Private Sub Test_Af_DLL()
  Dim interntDLLNAVN as myDLL
  Set interntDLLNAVN = NEW myDLL

  msgbox Beregn(1,3)

  Set interntDLLNAVN = Nothing

End Sub

Resultatet skulle gerne blive 4 i en messagebox.
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 11:29 #7
Jeg går ud fra at MyDLL er navnet på dll filen jeg lige har lavet??? For så virker det ikke!

Den siger
"Compile error:"
"Expected user-defined type, not project"

Og stopper her:
Dim MinFørsteDll As MinClass (Første linje)!
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 11:32 #8
Private Sub CMD_Beregn_Click()
Dim MinFørsteDll As MinClass
  Set MinFørsteDll = New MinClass2

  Text3.Text = Beregn(Text1.Text, Text2.Text)

  Set MinFørsteDll = Nothing

End Sub
Avatar billede martin_moth Mester
27. august 2004 - 11:44 #9
Prøv at læs beskrivelsen i spørgsmålet, og se om det ikek kan hjælpe. Der er masser af andre besvarede spørgsmål. Du skal sikkert også referere til den
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 11:54 #10
Det er ligemeget hvad jeg prøver, så stopper den i første linje!

Dim Mindll As Minclass.dll
Set Mindll = New Minclass
Dim Resultat As Integer
Resultat = Mindll.Beregn(2, 2)
MsgBox Resultat
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 11:55 #11
Jeg har refereret til DLL'en.... der kommer den liste over muligheder, når jeg trykker ctrl+J!
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 12:02 #12
DLL = MinClass
Class Module = Udregn
Public Function = Beregn
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 12:15 #13
Private Sub CMD_Beregn_Click()
  Dim MinBeregningDLL As MinCLass
  Set MinBeregningDLL = New MinCLass

  MsgBox MinBeregningDLL.beregn(Text1.Text, Text2.Text)

  Set MinBeregningDLL = Nothing

End Sub
Avatar billede -l_jogge_l- Nybegynder
27. august 2004 - 12:16 #14
Men resultatet gir 0!!!!

Hvordan får jeg resultatet MED tilbage igen???
Avatar billede -l_jogge_l- Nybegynder
02. september 2004 - 09:26 #15
deler point!
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