昨晚不到两点就睡了,已经很早了今天早上居然七点五十就醒来了,躺床上做了五分钟的思想斗争,咬咬牙起床了.......一看手机,嗯,不错,七点五十五洗漱完毕后刚好八点,不错不错,真是难得的早起!原来早上的空气这么好!

解决方案 »

  1.   

    Public Function gettime() As String 
    Dim cn As New ADODB.Connection 
    Dim cmd As New ADODB.Command 
    Dim rst As New ADODB.Recordset On Error GoTo ErrPro cn.ConnectionString = "driver={SQL Server};" & _ 
    "server=10.163.10.3;uid=trace;pwd=traceaeclmis;database=master" 
    cn.ConnectionTimeout = 300 
    cn.Open 
    cmd.ActiveConnection = cn 
    cmd.CommandText = "select convert(char(20),getdate(),120) as sys_date" 
    'cmd.ActiveConnection = cn 
    Set rst = cmd.Execute 
    gettime = rst(0) 
    rst.Close 
    cn.Close 
    Exit Function ErrPro: 
    gettime = Format(Now(), "YYYY-mm-DD HH:mm:ss") 
    End Function http://www.m5home.com/bbs/dispbbs.asp?boardid=34&Id=1690 这个通过标准dll模板生成dll以后,给别的VB程序调用只 能返回首字母,不知道怎么搞的。 
    大侠指点
    我的引用函数是下面的,只返回一个‘2’:
    Private Declare Function gettime Lib "TestDLL0912.dll" () As StringPrivate Sub cmdExit_Click()
    End
    End SubPrivate Sub Command1_Click()
    'Dim d, dd As String
    'd = Format(gettime(), "yyyy-MM-dd HH:mm:ss")
    'dd = getdate()
    Text1.Text = gettime() 'Format(gettime(), "yyyy-MM-dd HH:mm:ss")
    'Dim d As Date
    'd = gettime()
    'Text1.Text = Format(d, "yyyy-MM-dd HH:mm:ss")End Sub
      

  2.   

    返回字符串不能用这种方式需要传入一个已经初始化好的缓冲区,以及缓冲区长度,再由DLL回写.请看这里:函数大师传递与返回文本参数(实例+源码)以及:VB中BSTR字符串的结构API返回字符串的方式