VB6.0 вызывает Sub, написанный в модуле BAS из CLS класса Class не работает - PullRequest
2 голосов
/ 15 марта 2012

Я пишу проекты 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-вызов модуля класса для этого Sub внутриМодуль BAS

LogMyApp ( "FunctionBlaBla" , "blablabla" )

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

1 Ответ

6 голосов
/ 15 марта 2012

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

LogMyApp "FunctionBlaBla" , "blablabla"

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

...