TC官方合作论坛

标题: 求懂VB的高手帮制作dll [打印本页]

作者: pppgg123    时间: 2013-5-7 21:28
标题: 求懂VB的高手帮制作dll
基本上我算是小白 也只有写一些小辅助才会接触这类程式
所以VB.VC等...一律不懂...

我看到有其他同协友分享一个我要的功能
但他没制成dll
请问有办法帮忙制成dll吗?


----------------以下是VB源码----------------------
Private Const WM_GETTEXT = &HD
Private Const WM_GETTEXTLENGTH = &HE
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Private Function Gettext(ByVal hwnd As Long) As String
On Error Resume Next
Dim s As String
Dim mlen As Long
If hwnd = 0 Then Exit Function
mlen = SendMessage(hwnd, WM_GETTEXTLENGTH, 0, vbNull)
s = Space(mlen + 1)
Call SendMessage(hwnd, WM_GETTEXT, mlen + 1, ByVal s)
Gettext = Replace(s, Chr(0), "")
End Function

------------------------------------------------------

原網址




作者: cylhb    时间: 2013-5-7 22:48
这个灰常简单..........
而且封装DLL也完全没必要..
又是时候见证dllcall的强大了.下面上代码..大概就是这个样..具体如何调用?放哪里?随便..你喜欢...

  1. var s,mlen
  2. var hwnd=窗口.鼠标所在窗口句柄()
  3. if(hwnd==0)
  4.         return false
  5. endif
  6. var mlen=dllcall("user32.dll","long","SendMessageW","long",hwnd,"long",14,"long",0,"long",0)
  7. mlen++
  8. 遍历(i=0;i<mlen;i++)
  9.         s=s&" "
  10. 遍历结束
  11. dllcall("user32.dll","long","SendMessageW","long",hwnd,"long",13,"long",mlen,"char",s)

  12. 辅助.消息框(s)
复制代码


作者: 如此美丽。    时间: 2013-5-7 23:03
   TC有这个功能     标题内容=窗口.得到标题(窗口句柄)
作者: pppgg123    时间: 2013-5-7 23:46
版主我爱你啊!!!!
这东东我烦恼了一天,又是程式文盲
PO出来不到一小时就解决了
版主威武 膜拜中

回楼上 这个源码的功用读取其他程式编辑框内容
有些编辑眶跟标题值不一样

[attach]9006[/attach]

作者: cylhb    时间: 2013-5-7 23:55
嗯,取标题和取文本确实有些地方不一样.
亲,可以用就行....记得采纳哦
作者: pppgg123    时间: 2013-5-8 07:35
问个蠢问题如何采纳别人的意见阿?
官方写右下方可是我找不到啊...原本我以为是时间限制才没出现先去睡觉...






作者: cylhb    时间: 2013-5-8 11:16
没事-。-没找到就别管了。呵呵
作者: a8461959    时间: 2013-5-8 12:51
版主不在乎TC币




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1