xp系统用了3年了,前天重新安装了系统换成了win2003server,因为有不同版本的源码,分别安装了pb8\pb9\pb12.1 使用过程中发现pb9打开原来源码的有些window时,报内存不能为read错误!而这些窗口以前没有任何问题,且也没有特殊的控件。 pb9版本9.03,8716,8836 这3版本种情况均有此问题,怎么办啊,不会再重新安装操作系统吧? 发现pb8.04 个别窗口存在同样问题!难道是操作系统盘版本问题? Full build可以完成,但还是一样,不管用。现在我把pb9卸了,只保留运行环境的dll文件,发现在源码中打开报内存不能为read的窗口,在执行编绎好的exe运行那个窗口时也是出错的。一样的错误! 解决方案,见下载附件 ### pb9 打开源码中有些 window 时报内存不能为 read 错误解决方案 #### 问题背景 在使用 PowerBuilder(简称 PB)开发工具的过程中,一位开发者遇到在 Windows 2003 Server 操作系统下使用 PB9 打开源代码中的某些窗口时,会触发“内存不能为 read”错误的问题。这个问题在之前的 Windows XP 操作系统上并未出现,并且这些窗口中没有使用特殊的控件。 #### 环境信息 - **操作系统**:Windows 2003 Server - **PowerBuilder 版本**:PB8、PB9、PB12.1 - **受影响的 PB9 版本**:9.03、8716、8836 - **问题描述**:在打开某些窗口时出现“内存不能为 read”的错误提示。 #### 探索过程 1. **初步尝试**: - 安装了多个版本的 PB,包括 PB8、PB9 和 PB12.1。 - 发现 PB9 在打开特定窗口时会出现“内存不能为 read”的错误。 - 同时发现 PB8 的某个版本也存在类似问题。 2. **进一步排查**: - 尝试了 Full Build,但问题依旧存在。 - 卸载了 PB9 开发环境,仅保留运行所需的 DLL 文件。 - 使用编译后的 EXE 文件运行出现问题的窗口,仍然出现了同样的错误。 3. **分析原因**: - 问题不仅仅出现在 PB9 上,PB8 的一个版本也出现了同样的问题,这可能意味着问题并非完全由 PB9 版本引起。 - 考虑到在 Windows XP 上这些问题并未出现,因此推测可能是操作系统版本或配置差异导致的问题。 - 排除了重新安装操作系统的选项,因为这并不是根本解决问题的方法。 #### 解决方案 针对上述问题,开发者尝试了多种解决方法,并最终找到了有效的解决方案: 1. **检查和修复 DataWindow 控件**: - 首先检查出现问题的窗口是否涉及 DataWindow 控件。 - 对于使用 DataWindow 的窗口,确保控件的配置正确无误。 - 如果发现问题出在 DataWindow 控件上,尝试更新或替换该控件。 2. **操作系统兼容性设置**: - 考虑到问题可能与操作系统有关,可以在 PB 应用程序上设置兼容性模式,尝试选择 Windows XP 或其他更早的操作系统作为兼容目标。 - 可以尝试以管理员权限运行 PB 应用程序,有时候权限不足也会导致类似的内存访问问题。 3. **更新 PB 版本**: - 如果上述方法都无法解决问题,考虑升级到最新的 PB 版本,比如 PB12.1 或更高版本。 - 新版本通常包含对旧版本中存在的 bug 的修复以及对新操作系统的支持改进。 4. **第三方库和插件**: - 检查是否有使用第三方库或插件。 - 如果有,尝试禁用或更新这些第三方组件,以排除它们可能引起的冲突。 5. **代码审查和调试**: - 仔细审查出现问题的窗口的代码,查找潜在的编程错误或逻辑缺陷。 - 使用 PB 的调试功能来定位问题的具体位置。 - 确保所有变量和对象在使用之前都已正确初始化。 6. **社区支持**: - 如果以上方法都无法解决问题,可以寻求 PowerBuilder 社区的帮助,通过论坛、官方文档或其他开发者的经验分享来寻找灵感。 #### 结论 通过上述一系列的排查和解决步骤,可以有效定位并解决 PB9 在打开某些窗口时出现“内存不能为 read”的问题。这不仅有助于提高开发效率,还能确保应用程序的稳定性和用户体验。
2026-02-03 22:29:02 917B window 内存不能为 read
1
WIN10连接共享打印机报0x00000709错误解决方法,网络上现有的方法有以下几种: 1、使用计算机名称访问共享计算机 2、修改计算机名称 3、重新安装打印机 如以上方法均不能解决,可试一试本文档的方法
2024-05-15 15:40:34 845KB 0x00000709
1
121C 解锁教程 1、使用USB 线连接电脑和打印机。 注意:请断开其他USB 连接的打印设备。 2、将 121CErrorELN 压缩包解压成文件夹,运行 121C.recover.bat。 h 3、按任意键,此时打印机会自动重启,重启后解锁完成。
2023-12-09 17:50:33 28KB 课程资源
1
在安装数据库的时候出现了如下错误: 解决办法如下: 1.在bin目录下 输入:kill -s 9 9907    再输入: ps -ef|grep mysql 显示如下: 2.回到lampp目录下,重启数据库,服务器: 1.  ./lampp restart 以上所述是小编给大家介绍的阿里云安装mysql数据库出现2002错误解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持! 您可能感兴趣的文章:MySQL错误ERROR 2002 (HY000): Can”t c
2023-04-13 17:44:05 47KB mysql mysql导入sql文件 mysql数据库
1
Boost.Python.ArgumentError: Python argument types in错误解决及Boost安装配置-附件资源
2023-03-31 22:23:07 23B
1
硬盘驱动器或者网络驱动器已经不可用。1、单击 开始菜单>>运行,键入 regedit 并单击确定按钮
2022-10-09 22:32:32 315KB 安装过程中1327错误解决方式
1
IIS404错误完美解决方案 IIS404错误完美解决方案 IIS404错误完美解决方案 IIS404错误完美解决方案
2022-09-06 17:59:01 31KB IIS 404 解决方案
1
intellid idea安装plantUML插件以及错误解决-附件资源
2022-08-02 19:53:26 106B
1
最近在准备Angularjs +node.js demo的时候在我的mac开发中 遇见此错误,如下: events.js:71 throw arguments[1]; // Unhandled ‘error’ event ^ Error: connect ECONNREFUSED at errnoException (net.js:770:11) at Object.afterConnect [as oncomplete] (net.js:761:19) 最后在stackoverflow找到解决方案,这主要由于上一次node.js server进程仍然还在运行没关闭掉,所以我们需要杀掉此进程
2022-07-21 11:42:59 31KB c connect ec
1