VB6.0从类模块CLS调用BAS模块中写入的Sub不能正常工作

时间:2012-03-15 17:15:49

标签: dll vb6 activex com+ subroutine

我从先前编写的代码开始编写VB6.0项目(带有COM +的DLL)。 我有一个“主”类模块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

这是我在BAS模块中对该Sub的类模块CLS调用

LogMyApp ( "FunctionBlaBla" , "blablabla" )

非常感谢任何帮助! 非常感谢!

1 个答案:

答案 0 :(得分:6)

简单修复,删除parens,因为你没有调用函数;

LogMyApp "FunctionBlaBla" , "blablabla"

(或者纯粹是Call关键字的视觉事物前缀; call LogMyApp(...)