VB6.0 вызывает Sub, написанный в модуле BAS из CLS класса Class не работает

Я пишу проекты VB6.0 (DLL с COM+), начиная с ранее написанного кода. У меня есть "основной" файл CLS модуля класса с "основными" функциями, потоком процессов и т. Д. У меня также есть "боковой" модуль BAS, где я сохраняю все функции / подпрограммы для использования в качестве инструментов в моем "основном" модуле класса.,

Я написал очень простую систему ведения журналов (потому что я чувствую себя очень некомфортно с App.LogEvent("blablabla")), но я не могу скомпилировать DLL. Сообщение указывает мне на вызов CLS, и я думаю, что проблема связана с Sub, который должен возвращать значение, но я не хочу возвращать какое-либо значение из этого Sub! Я довольно новичок в VB6.0 и улучшить существующий исходный код довольно сложно.

Вот мой модуль BAS

Public Sub LogMyApp(ByVal sFunctionName As String, ByVal sLogEntry As String)

    Dim sLogPath As String
    sLogPath = "C:\Temp\MyLog.txt"

    Dim fn As Integer
    fn = FreeFile

    Open sLogPath For Append As #fn
    Write #fn, Now & "|" & sFunctionName & "|" & sLogEntry
    Close #fn

End Sub

Вот мой CLS-вызов класса Class для этого Sub внутри модуля BAS

LogMyApp ( "FunctionBlaBla" , "blablabla" )

Любая помощь очень ценится! Большое спасибо!

1 ответ

Решение

Простое исправление: удалите паренсы, поскольку вы не вызываете функцию;

LogMyApp "FunctionBlaBla" , "blablabla"

(Или как просто визуальный префикс с ключевым словом Call; call LogMyApp(...))

Другие вопросы по тегам