下面是函数
Public Function SavePictureToDB(Img_RS As ADODB.Recordset, sFileName As String)
    Dim oPict       As StdPicture    On Error GoTo procNoPicture
    Set oPict = LoadPicture(sFileName)
    
    'Exit Function if this is NOT a picture file
    If oPict Is Nothing Then
        MsgBox "Invalid Picture File!", vbOKOnly, "Oops!"
        SavePictureToDB = False
        GoTo procExitSub
    End If
    
    
    If Img_RS.EOF Then
        Img_RS.AddNew
    End If
    
    Set strStream = New ADODB.Stream
    strStream.Type = adTypeBinary
    strStream.Open
    strStream.LoadFromFile sFileName
    Img_RS.Fields("IMG_PHOTO").Value = strStream.Read
    Img_RS.Fields("SABUN").Value = Txtsabun
    Img_RS.Update
    
    Image6.Picture = LoadPicture(sFileName)
    SavePictureToDB = True
    
procExitSub:
    Exit Function
procNoPicture:
    MsgBox Error, vbInformation
    SavePictureToDB = False
    GoTo procExitSub
    Resume Next
End Function然后在 后面的一个里引用了这个函数
If Not SavePictureToDB(Img_Rst, .FileName) Then
想问一下,如何判断这个函数是boolean的函数,
如何知道他的返回值是什么类型的?(代码是别人写的)高手指点

解决方案 »

  1.   

    SavePictureToDB = True
    SavePictureToDB = False
    通过函数里的这两句就可以知道这个函数的返回值是boolean类型的.
    它的先在声明中将函数返回值默认成Variant类型:
    Public Function SavePictureToDB(Img_RS As ADODB.Recordset, sFileName As String)
    然后在函数内将返回值转化为boolean类型:
    SavePictureToDB = True
    SavePictureToDB = FalsePublic Function SavePictureToDB(Img_RS As ADODB.Recordset, sFileName As String) as boolean
    如果是这样声明,那函数在定义时就已经是boolean类型的了
      

  2.   

    这个函数的返回值没有明确定义,所以是variant
    在函数里面返回的时候赋值是boolean而已。
    如果需要明确返回类型可以改为
    Public Function SavePictureToDB(Img_RS As ADODB.Recordset, sFileName As String) as boolean
      

  3.   

    试运行一下,把返回付给variant变量。 然后看该变量的类型    Dim a As Variant
        a = SavePictureToDB(Img_Rst, .FileName)
        MsgBox TypeName(a)