摘要:VB源码,文件操作,文件比较器  采用VB写的文件比较器(附源码下载),可比较两个文件的异同,内容差异(位置偏移量),打开程序后浏览选中两个需要比较的文件,点击“开始比较”按钮,即可进行文件比对。
2025-11-14 00:11:13 3KB VB源代码 文件操作
1
一个VB拖动控件用法例子,TracBar.ctl是所调用的控件,滑块拖动示例,在你的窗口中增加滑块,用滑块可以改变参数,改变用户设置程序的方式,你还可以在滑块的后方添加一个Lable,用以改变滑块时适时显示参数值的变化,这个控件对大家来说,是值得用的提升用户体验的控件。
2025-11-10 05:22:25 6KB VB源码-控件组件
1
自制的VB窗体修饰控件集,内含漂亮按钮、ListView、下拉列表、TAB标签选项卡、树形控件、窗体滑动菜单、分组菜单,可折叠展开的菜单等,相信这些控件对于从事vb6编程的朋友来说,是相当实用的。   某内部控件代码释义:   Private m_List() As gListStruct ‘保存各组列表框列表项的内容,通过二维数组实现   Private m_Cnt() As Long ‘保存各组列表框的数目   Private m_Idx() As Long ‘保存各组列表框选中项的索引值   Private m_GroupName() As String ‘保存各个分组标题   Private m_IsSpread() As Boolean ‘各个分组列表框是否展开   Private m_GroupCnt As Long ‘分组的数目   Private m_TotalCnt As Long ‘整个个分组列表框的元素数目(包括正常列表项和分组标题两种元素,这个数目直变化)   Private m_GroupIdx() As Long ‘保存各个分组标题在整个分组列表框中的位置(该值和m_TotalCnt一样会变化)   Private m_PageCount As Long ‘整个分组列表框中一页中的最大元素数目(包括正常列表项和分组标题两种元素)   Private m_ItemHeight As Long ‘列表项的高度   Private m_HoverIndex As Long ‘鼠标所在位置列表项的索引号,-1表示不在任何一个列表项上   Private m_rel As Long ‘移除Item或Group时,记录滚动条的偏移值,在tmrInit里面处理,防止重复画滚动条   Private m_DisMode As GroupListMode ‘显示模式(0---无图标 1---小图标 2---大图标)
2025-11-10 05:16:53 179KB VB源码 控件组件 窗体控件 Listview
1
一个用于VB的属性窗口控件,专门用于设置元素属性的,可弹出类似VB IDE中的属性窗口,在这个窗口中对元素的各个属性进行设置,免费开源的VB属性控件,这类控件我们并不缺少,不过这款控件觉得挺好用,而且开源。
2025-11-10 05:10:21 145KB VB源码-控件组件
1
VB 仿PhotoShop图像编辑软件源码,可实现大部分PhotoShop的功能,不过当然不能和PhotoShop比功能了,本程序中内置了很多图像处理滤镜,也是很强大的,至于程序是如何实现这么强大的图像处理功能的,就靠大家去下载源码研究了。
2025-11-05 00:07:15 271KB VB源码-图形处理
1
VB调用显示Windows控制面板各个模块,也就是vb操作控制面板,把Windows控制面板中的内容全部显示在本程序的窗口中,像键盘设置、区域设置、网络、显示、多媒体等各个模块的显示。本例中主要是通过rundll32.exe shell32.dll来调用各个控制模块,将ICO图标编号,然后使用esle if结构逐一判断用户点击了哪个图标,图标对应于shell32.dll的调用,比如下面是其中一些模块的调用方法:   Private Sub Icon_Click(Index As Integer)   If Index = 0 Then    Call ControlPanels("rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1")   ElseIf Index = 1 Then    Call ControlPanels("rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1")   ElseIf Index = 2 Then    Call ControlPanels("rundll32.exe shell32.dll,Control_RunDLL timedate.cpl")   ElseIf
2025-11-04 23:41:21 11KB VB源码-图形处理
1
VB拦截Windows Explorer删除进程,内含API HOOK,源代码:倒霉蛋儿,程序有时候也会窗口勾挂失败!   勾住了SHFileOperation等函数,DLL用Delphi写的C会的太少,查了半天才知道原来explorer是用SHFileOperation删除文件,经过测试很稳定,没有出现崩溃的情况,由于只勾住了SHFileOperation函数,所以别的程序要是调用DeleteFile删除文件,拦截不到,要是想拦截DeleteFile自己接着写吧。      mod_Inject.bas类的注释摘录:   Dim MyAddr As Long ‘执行远程线程代码的起始地址。这里等于LoadLibraryA的地址   ‘dll文件路径   MyDllFileLength = LenB(StrConv(MyDllFileName, vbFromUnicode)) + 1    ‘这里把dll文件名从Unicode转换成Ansi,否则英文字母是2个字节。 _   顺便说一下,学过C的应该知道字符串要以/0标志结尾,所以dll文件名长度要加上1个字节存放Chr(0)   ‘得到进程的句柄   在目标进程中申请分配一块空白内存区域。内存的起始地址保存在MyDllFileBuffer中。 _   这块内存区域我们用来存放dll文件路径,并作为参数传递给LoadLibraryA。   在分配出来的内存区域中写入dll路径径。注意第二个参数传递的是MyDllFileBuffer的内容, _   而不是MyDllFileBuffer的内存地址?   If MyReturn = 0 Then Inject = False   MyAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")   ‘得到LoadLibraryA函数的起始地址。他的参数就是我们刚才写入的dll路径。但是LoadLibraryA本身是不知道参数在哪里的。 _   接下来我们就用CreateRemoteThread函数告诉他参数放在哪里了? If MyAddr = 0 Then Inject = False   MyResult = CreateRemoteThread(ProcessHandle, 0, 0, MyAddr, MyDllFileBuffer, 0, 0)   好了,现在用CreateRemoteThread在目标进程创建一个线程,线程起始地址指向LoadLibraryA, _   参数就是MyDllFileBuffer中保存的dll路径?    If MyResult = 0 Then    Inject = False    Else    Inject = True    End If    ‘接下来你可以使用WaitForSingleObject等待线程执行完毕。 _    并用GetExitCodeThread得到线程的退出代码,用来判断时候正确执行了dll中的代码。    CloseHandle MyResult    CloseHandle ProcessHandle    ‘扫地工作   End Function
2025-10-30 11:49:42 348KB VB源码 文件操作 删除进程
1
在IT行业中,编程控件是构建用户界面的重要组成部分。这篇分享的主题是“纯自画的ComboBox控件”,VB(Visual Basic)共享源码,这意味着它是一个由开发者手工编写,而非依赖于VB内置控件的ComboBox实现。ComboBox是常见的UI元素,通常用于下拉列表的选择,结合输入框的功能,为用户提供灵活的交互体验。 ComboBox控件的自定义绘制(自画)涉及到Windows API调用和GDI图形接口的深入理解。自画控件允许开发者拥有更高的定制能力,可以调整控件的外观和行为,比如改变字体、颜色、边框样式,甚至实现独特的动画效果。在这个VB源码中,开发者可能已经实现了水平滚动、垂直滚动以及列表框的功能,这些都是标准ComboBox控件通常具备的特性。 水平滚动和垂直滚动是在大量数据或宽度过大的情况下必不可少的,它们保证了用户可以在有限的屏幕空间内查看和选择所有选项。列表框则是ComboBox的核心部分,显示可选的项,用户可以通过键盘或鼠标进行交互。 源码分享的意义在于促进知识和技术的交流,让其他VB开发者能学习到如何自定义控件,提升自己的编程技能。通过阅读和理解这样的源码,开发者可以了解到如何在没有系统控件支持的情况下,使用基本的图形绘制API来构建复杂的UI元素,这对于提高软件的个性化和用户体验有着显著的帮助。 这个项目中,开发者可能面临了以下挑战: 1. 绘制逻辑:需要精确控制每个元素的绘制,包括文本、边框、背景等。 2. 事件处理:自定义控件需要处理各种用户交互事件,如点击、滚动、选择等。 3. 性能优化:自绘可能会带来性能问题,尤其是在处理大量数据时,需要考虑如何高效地渲染列表项。 4. 兼容性测试:自定义控件可能在不同的操作系统或屏幕分辨率下表现不同,需要进行广泛的测试。 在VB中,控件组件的自定义开发通常涉及以下步骤: 1. 创建新的窗体控件类,继承自System.Windows.Forms.Control。 2. 覆盖虚方法,如OnPaint,以实现自定义绘制。 3. 实现所需的事件处理程序,如OnMouseClick、OnKeyDown等。 4. 添加必要的属性和方法,以扩展控件的功能。 通过这个“纯自画的ComboBox控件”源码,VB开发者可以深入学习控件的底层机制,掌握控件开发技巧,这将有助于他们创建更复杂、更个性化的应用程序。同时,这也是对经典编程艺术的致敬,因为自己动手编写控件不仅能提升技术能力,也能带来编程的乐趣。
2025-10-28 07:06:25 29KB VB源码 控件组件 ComboBox
1
vkUserControlsXP控件的完整版,压缩包中没有示例,用的时候可在你的工程中引用,然后就可看到效果了。本控件可将你的窗口及控件元素变成XP风格,变得很漂亮,让软件界面更专业,而且控件使用简单,新手也会操作。
2025-10-04 19:25:08 159KB VB源码-控件组件
1
VB(Visual Basic)是一款由微软开发的面向对象的编程环境,尤其适合初学者进行Windows应用程序的开发。在VB中,MDI(Multiple Document Interface)窗体是一种特殊类型的窗体,用于创建多文档应用程序。MDI窗体允许在一个父窗口内打开多个子窗口,这些子窗口可以同时显示和操作,而不会互相覆盖,极大地提高了用户的多任务处理能力。 MDI窗体的核心概念在于它作为容器,可以承载多个MDI子窗体(Child Forms)。在VB中,我们可以通过以下步骤创建一个MDI应用程序: 1. **创建MDI父窗体**:我们需要创建一个MDI父窗体,这是承载所有MDI子窗体的主窗口。在VB的设计界面中,选择"MDI Form"模板创建窗体,并将其设为主窗体。 2. **创建MDI子窗体**:接着,创建一个或多个常规窗体,这些将作为MDI子窗体。在属性窗口中,将每个子窗体的`IsMdiChild`属性设置为`True`,这样它们就会成为MDI父窗体的子窗口。 3. **菜单和事件处理**:在MDI应用程序中,通常会有一个菜单项用来打开新的子窗体。通过添加菜单项,然后为其编写事件处理程序,可以在运行时创建和显示MDI子窗体。例如,`File`菜单下的`New`命令可以调用`Form_Load`事件来创建一个新的子窗体。 4. **关闭和管理子窗体**:VB提供了一些内置的方法来管理MDI子窗体,如`MdiChildren`集合用于获取当前打开的所有子窗体,`Activate`方法用于激活指定的子窗体,`Close`方法用于关闭子窗体。 5. **帮助文件的设置**:如描述中提到,如果VB工程没有帮助文件,用户可能会遇到困难。在VB中,可以通过设置“工程属性”中的“帮助文件”路径,为应用程序提供F1帮助功能。 在这个“VB制作的MDI窗体实例源代码”中,我们可以期待看到如何创建和管理MDI窗体的完整示例。源码可能包括了MDI父窗体和一个或多个MDI子窗体的定义,以及相应的事件处理程序。通过学习和分析这个源码,开发者可以深入理解MDI窗体的运作机制,并能灵活地应用到自己的项目中去。 VB的MDI窗体技术提供了高效且直观的多文档界面,使得用户能够在同一个应用程序中同时处理多个数据或任务。对于那些需要在单个窗口中组织和管理多个独立工作区的应用来说,MDI是一个非常实用的设计模式。通过深入研究和实践VB中的MDI窗体,开发者能够提升其Windows应用程序的开发技能,创建出更加用户友好的软件。
2025-09-10 10:57:01 2KB MDI窗体 VB源码 源码中心 界面编程
1