Link to home
Start Free TrialLog in
Avatar of weisscoaching
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?
Avatar of Joe Howard
Joe Howard
Flag of United States of America image

If it isn't a COM dll you can't register it.
Avatar of weisscoaching
weisscoaching

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?
OK so I have what I think is a COM dll
Is it or isn't it?

What language is the dll written in?
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(NumberOfKids)
        End Get
    End Property

    Public Function Calculate_Kids_Points(ByVal 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
ASKER CERTIFIED SOLUTION
Avatar of Joe Howard
Joe Howard
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
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.