问题标签 [vb6]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
13 回答
317812 浏览

arrays - VBA数组排序功能?

我正在为 VBA 中的数组寻找一个不错的排序实现。首选快速排序。或者除了冒泡或合并之外的任何其他排序算法就足够了。

请注意,这适用于 MS Project 2003,因此应避免使用任何 Excel 本地函数和任何与 .net 相关的内容。

0 投票
5 回答
3900 浏览

debugging - Microsoft JET SQL 查询日志或“如何调试客户的程序?”

问题:

我们使用我们最大的客户编写的程序来接收订单、预订运输和做其他与订单相关的事情。我们没有其他机会,只能使用该程序,当涉及到他们的程序问题时,客户非常不支持。我们只需要接受这个程序。

现在这个程序在有两个或更多用户使用时,大部分时间都非常慢,所以我试图在幕后寻找问题的根源。

到目前为止我发现的程序的一些要点:

  • 它是用 VB 6.0 编写的
  • 它使用一个受密码保护的 Access-DB (Access 2000 MDB),它位于一个用户机器上的一个文件夹中。
  • 该文件夹通过网络共享并由所有其他用户使用。
  • 它使用 msjet40.dll 版本 4.00.9704 与访问进行通信。我猜是ADO?

我还使用Process Monitor来监视文件访问,并找出程序如此缓慢的原因:即使程序处于空闲状态,它也在对 mdb 文件执行数千次读取操作。在网络上,这当然非常慢:

进程监视器跟踪 http://img217.imageshack.us/img217/1456/screenshothw5.png

真正的问题:

有没有办法监控负责读取活动的查询?我可以设置跟踪标志吗?挂钩 JET DLL 的?我猜该程序正在执行一些昂贵的查询,导致 JET 在此过程中读取大量数据。

PS:我已经尝试将mdb放在我们公司的文件服务器上,成功访问它甚至比通过本地共享还要慢。我还尝试更改客户端上的锁定机制(机会锁定),但没有成功。

我想知道发生了什么,需要为我们客户的开发人员提供一些确凿的事实和建议,以帮助他/她更快地完成程序。

0 投票
5 回答
21956 浏览

vb6 - 调试VB6应用程序时如何设置工作目录?

我正在调试一个 VB6 可执行文件。可执行文件在运行时从其当前目录加载 dll 和文件。在调试器中运行时,当前目录似乎是 VB6 的目录。

如何为 VB6 设置工作目录?

0 投票
8 回答
10838 浏览

vb6 - 在没有 DoEvents 的情况下取消 VB6.0 中长时间运行的进程?

是否可以在不使用 DoEvents 的情况下取消 VB6.0 中长时间运行的进程?

例如:

我假设在“如果取消那么......”之前我需要一个“DoEvents”有没有更好的方法?有一阵子了...

0 投票
1 回答
2294 浏览

winapi - 无边框任务栏项目:使用右键菜单 (VB6)

即使BorderStyle设置为 0,也可以通过打开ShowInTaskbar属性或直接使用 windows api来强制窗口显示在任务栏上SetWindowLong Me.hwnd, GWL_EXSTYLE, GetWindowLong(Me.hwnd, Win.GWL_EXSTYLE) Or Win.WS_EX_APPWINDOW:但是,此类任务栏条目在其任务栏条目中缺少右键单击菜单。右键单击它们不会显示上下文菜单。有没有办法将标准或自定义处理程序附加到它?

0 投票
2 回答
3351 浏览

vb6 - VB6 与 MSBuild 的集成

因此,对于必须在 Team Build/MSBuild 环境(特别是 Visual Basic 6 应用程序/项目)中集成遗留项目/代码的构建/编译的任何人来说,这是一个问题。

除了编写自定义构建任务(我不反对)之外,是否有人对如何最好地将遗留 VB6 项目的编译和版本控制集成到 MSBuild 构建中有任何建议?

我知道CodePlex的 FreeToDev msbuild 任务,但它们目前已被撤回。

理想情况下,我正在寻找版本和编译代码以及捕获 msbuild 日志的编译输出(尤其是错误)。

我已经看到有关将此功能封装在自定义任务中的建议,但真的想知道是否有人尝试过另一种解决方案(除了执行 shell 命令)-本质上,是否有人有“更清洁”的解决方案?

理想情况下,使用执行命令将是最后的手段。

0 投票
2 回答
2220 浏览

vb6 - 即使在 vb6 中也防止 Enter 键触发按钮单击

我有一个带有进度条和取消按钮的表单,该按钮在进程运行时显示。按钮“取消”属性设置为 true,因此按转义键会取消该过程。

但是,由于按钮是表单上唯一能够获得焦点的控件,如果用户在进程运行时不小心按了 Enter(或空格键),它将被取消。

我通过将 KeyPreview 设置为 true (在表单上)然后将 KeyAscii 设置为 0 来阻止空格键工作,但是这种方法似乎不适用于 enter 键,因为按钮单击事件首先触发。

我尝试将按钮的 TabStop 属性设置为“false” - 没有变化。

0 投票
2 回答
3012 浏览

vb6 - 在 VB 6.0 中使用 ini 文件

我一定很傻,但我似乎找不到如何使用 VB 6.0 读取老式的 ini 文件。我似乎只能找到关于读取和写入注册表的信息。有人可以将我推向正确的方向吗?请注意,我不是程序员,只是一个试图用他的电脑获得一些无害乐趣的爱好者,所以当你指出明显的出血时请不要太苛刻。

0 投票
5 回答
2768 浏览

vb6 - 学习VB6

我正在从 Java 开发转移到 MSFT 环境。该应用程序目前是用 VB6 编写的,虽然它将来会转到 VB.NET/C#,但我现在需要找到一种方法来获取 VB6。有人告诉我它很旧,这些天不会有关于它的书。

有小费吗?网站?

0 投票
2 回答
428 浏览

vb.net - 易于更新应用程序的架构

我有一个系统可以将计算应用于一组数字(具体细节并不相关)。系统用户可以应用许多计算集,并且经常添加新集。目前,当需要将一组新的计算添加到系统中时,它们会添加到代码库中并发布新版本的系统。我希望能够在系统中添加新的计算集,而不必发布一个全新的版本,并且让这些新的计算自动对系统用户可见。目前,为每组计算创建一个新函数,并将包含适当函数名称的记录添加到系统表中。这些记录对系统用户可见(函数名称当然是别名!)然后从列表中选择它们。

这是我继承的一个 VB6/Access 应用程序,目前正在用 VB.NET 和 SQL Server 重写。

有人对如何最好地做到这一点有任何建议吗?