weisscoaching
asked on
What do I have to do to make my DLL able to be registered
I have written a DLL in VB (not using MS visual studio)
I intend to use these function in Excel VBA
the code compiles without a problem but I can't register it.
I get the following message the dll was loaded but the entry-point dllRegisterserver was not found.
is there something in the code that I need to add to make this work?
I intend to use these function in Excel VBA
the code compiles without a problem but I can't register it.
I get the following message the dll was loaded but the entry-point dllRegisterserver was not found.
is there something in the code that I need to add to make this work?
If it isn't a COM dll you can't register it.
ASKER
Thank you John. I agree I wasted time following Kanti's links.
Marcoshadow: OK so I have what I think is a COM dll. how can I use the Dll via VBA?
Marcoshadow: OK so I have what I think is a COM dll. how can I use the Dll via VBA?
OK so I have what I think is a COM dllIs it or isn't it?
What language is the dll written in?
ASKER
it is written in VB.
I have never done this before.
I used the editor "Microsoft visual Basic 2008 Express Edition"
I created a new project of type Class library and in it I add a module/class
the code looks like this:
Option Explicit On
Public Class Zakaut_calculations
Public ReadOnly Property Zakaut_Kids_Point(ByVal NumberOfKids As Integer) As Integer
Get
Return Calculate_Kids_Points(Numb erOfKids)
End Get
End Property
Public Function Calculate_Kids_Points(ByVa l intNumkids As Integer) As Long
If intNumkids > 0 Then
Select Case intNumkids
Case 1
Calculate_Kids_Points = 350
Case 2, 3, 4
Calculate_Kids_Points = (350 + ((intNumkids - 1) * 150))
Case Is > 4
Calculate_Kids_Points = (800 + ((intNumkids - 4) * 100))
Case Else
Calculate_Kids_Points = 0
End Select
Else
Calculate_Kids_Points = 0
End If
End Function
Public Sub New(ByVal NumberOfKids As Integer)
MsgBox("Class started/ended", vbOKOnly, " ")
End Sub
Protected Overrides Sub Finalize()
MsgBox("Class started/ended", vbOKOnly, " ")
MyBase.Finalize()
End Sub
End Class
I have never done this before.
I used the editor "Microsoft visual Basic 2008 Express Edition"
I created a new project of type Class library and in it I add a module/class
the code looks like this:
Option Explicit On
Public Class Zakaut_calculations
Public ReadOnly Property Zakaut_Kids_Point(ByVal NumberOfKids As Integer) As Integer
Get
Return Calculate_Kids_Points(Numb
End Get
End Property
Public Function Calculate_Kids_Points(ByVa
If intNumkids > 0 Then
Select Case intNumkids
Case 1
Calculate_Kids_Points = 350
Case 2, 3, 4
Calculate_Kids_Points = (350 + ((intNumkids - 1) * 150))
Case Is > 4
Calculate_Kids_Points = (800 + ((intNumkids - 4) * 100))
Case Else
Calculate_Kids_Points = 0
End Select
Else
Calculate_Kids_Points = 0
End If
End Function
Public Sub New(ByVal NumberOfKids As Integer)
MsgBox("Class started/ended", vbOKOnly, " ")
End Sub
Protected Overrides Sub Finalize()
MsgBox("Class started/ended", vbOKOnly, " ")
MyBase.Finalize()
End Sub
End Class
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Thanks I have made progress with these instructions.
I am still getting an error that the function I am calling is not defined. but I am at least one or two steps closer than were I was.
I am still getting an error that the function I am calling is not defined. but I am at least one or two steps closer than were I was.