易截截图软件、单文件、免安装、纯绿色、仅160KB

VB使用CopyMemory字符串处理

不能直接使用CopyMemoryStr,应该将字符串转为byte数组,然后使用CopyMemory
Property Get item() As String
    If h = 0 Then ErrRaise ERROR_INVALID_DATA
    'BugAssert p <> pNull
    Dim c As Long, ptr0 As Long
    Dim ab() As Byte
    '取出BSTR的长度
    CopyMemory c, ByVal p, 4
    If c > 0 Then
        ReDim ab(c - 1)
        CopyMemory ByVal VarPtr(ab(0)), ByVal (p + 4), c
        item = ab
    End If
End Property
Property Let item(s As String)
    If h = 0 Then ErrRaise ERROR_INVALID_DATA
    'BugAssert p <> pNull
    Dim c As Long
    Dim ab() As Byte
    c = LenB(s)
    ab = s
    ' 重新将BSTR放回内存中
    CopyMemory ByVal p, c, 4
    CopyMemory ByVal (p + 4), ByVal VarPtr(ab(0)), c
End Property


相关文档:

VB调整Excel格式

Private Sub Cmd_OK_Click()
    Dim ExcelAppX As Excel.Application
    Dim ExcelBookX As Excel.Workbook
    Dim ExcelSheetX As Excel.Worksheet
   
    Dim a(1 To 3) As Single
    Dim strFormat As Variant ......

(转)VB中创建可以输出函数的DLL

VB中创建的DLL只是COM组件,无法作为输出函数的DLL。今天从朋友哪里搞到一种可以创建输出函数的DLL的方法,欣喜之余,不敢独享,现在把他介绍给大家。
  VB编译文件实际上采取了两次编译的方法,首先是调用c2.exe产生OBJ文件,然后调用Link.exe连接。如果在link的时候添加EXPORT选项,实际上是可以输出函数的。但是,在V ......

.net中用DropDownList选择日期(vb代码)

看了别人写的C#的 自己转了一下 然后后重新改了改 写成了这个
另外还有一个我写的验证日期是否合法的代码 在后面 都是vb的 c#只会看不会写
  '判断闰年=======================
Private Function CheckLeap(ByVal year As Integer) As Boolean
If (year Mod 4 = 0) AndAlso (year Mod 100 <> ......

重拾VB之二,毫秒篇

重拾VB之二,毫秒篇
PMP 关劲松
   
    鬼使神差,09年12月入职的公司仍使用VB开发软件,虽然并非专职开发,但也不得不在事隔4年之后,重新使用VB。
    在vb中如何获得毫秒精度级别的时间?vb的时间函数不支持毫秒,需要利用windows的基本API,编写程序才能获取毫秒级 ......

vb Active 控件 集合类 问题

引言:
         做一个控件, 用于 数据采样如示波器, 可以添加,删除曲线, 设置曲线的相关属性: 线型,颜色,等...
过程:
         先创建 线 类,  在用户控件里实现 线 对象创建,  并声明一个 集合, 用于 存放建立的线对象.
问题 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号