delphi快速画图时报错

delphi快速画图时报错,第1张

delphi快速画图时报错原因以及解决办法如下:

1、绘图对象未被释放导致,修改代码时需要在使用完之后将其释放,例如释放位图对象、画笔对象等。

2、在多线程环境下进行的快速画图而没有正确同步导致的,可以将快速画图的 *** 作放到同步块中来避免多线程并发问题。

3、程序中途发生了异常,导致程序中断并报错,可以添加异常处理代码来避免程序异常退出,从而可以更好地发现异常并定位到对应位置进行调试。

4、程序运行过程中内存或其他资源不足导致的,需要及时清理资源或扩大内存限制。

我觉得可以有两种方案:1:在Delphi的环境选项中,在代码搜索路径的项目中,去掉VCL相关的文件,这样应该不会出现跟踪到VCL源码中的情况了。2:在Delphi定位的代码行(运行中断后)使用Call

Stack功能,可以比较容易的选择你自己的函数,看看是哪一条语句出错。

保存之后,重新刷新数据看看;

或者是你修改了主键值,引起了行定位错误;

有触发器,不要重写之前的表,容易出错。

你可以把触发器要执行的任务修改成一个存储过程,然后在进行数据修改的时候,执行成功之后再执行该过程试试。

据我的经验,遇到上述的问题,可能的原因是数据库默认值设计的问题。

当你在对数据库设计时,对某些字段设置了默认值,当你在进行数据提交以后,数据库会自动修改对应字段的所有行的默认值,从而可能导致数据库与数据集中数据的不一致,使ADOQuery无法对数据集进行定位。

当数据库的CursorLocation 的属性是clUseClient时,因为数据库存在默认值,在第一次append的时候,数据库自动修改了部分列,所以客户端无法定位。

解决方法:

修改数据库设计,不再设置默认值,为数据库表定义主键,保证其唯一性。

在执行完ADOQueryPost之后,执行ADOQueryRefresh,对于设置默认值的情况可以解决。

置ADOQuery控件的CursorLocation属性为clUseServer。

rundll32exe,rundll32exe,系统进程

rundll32 - rundll32exe - 进程信息

进程文件: rundll32 或者 rundll32exe

进程名称: Microsoft Rundll32

正常位置:c:\windows\system32

描述:test for netguide----Caiger2008

rundll32exe用于在内存中运行DLL文件,它们会在应用程序中被使用。这个程序对你系统的正常运行是非常重要的。注意:rundl132exe和rundll32exe神似但是rundl132exe是W32MirootWorm病毒。该病毒允许攻击者访问你的计算机,窃取密码和个人数据。该进程的安全等级是建议立即删除。

出品者: Microsoft Corp

属于:Microsoft Windows Operating System

系统进程: 是

后台程序: 是

使用网络: 否

硬件相关: 否

常见错误: 未知N/A

内存使用: 未知N/A

安全等级 (0-5): 0

间谍软件: 否

Adware: 否

广告软件: 否

木马: 否

下面是病毒的清除方法

这个病毒比较容易对付,总结对付这种病毒的方法:

1:关掉病毒进程explorerexe+rundll32exe

2:修复病毒启动项,防止病毒在系统启动的时候自动加载。

3:根据病毒启动项指出的路径,一一到各个文件夹下面找出病毒,一一删除。

4:重新启动,再打开360安全卫士全盘扫描杀毒。

5:清除系统垃圾文件(主要是临时文件夹)

Rundll32exe是什么?顾名思义,“执行32位的DLL文件”。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有 Rundll32exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32exe,不必惊慌,这证明用 Rundll32exe启动了多少个的DLL文件。当然,这些Rundll32exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。

现在,我来介绍一下Rundll32exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个 Rundllexe文件,他的意思是“执行16位的DLL文件”,这里要注意一下。在来看看Rundll32exe使用的函数原型:

Void CALLBACK FunctionName (

HWND hwnd,

HINSTANCE hinst,

LPTSTR lpCmdLine,

Int nCmdShow

);

其命令行下的使用方法为:Rundll32exe DLLname,Functionname [Arguments]

DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。

略谈Rundll32exe的作用 (我是菜鸟)

常用Windows9x的朋友一定对Rundll32exe和Rundllexe这两个档案不会陌生吧,不过,由于这两个程式的功能原先只限于在微软内部使用,因而真正知道如何使用它们的朋友想必不多。那么好,如果你还不清楚的话,那么就让我来告诉你吧。

首先,请你做个小实验(请事先保存好你正在执行的程式的结果,否则):点击“开始-程式-Ms-Dos方式”,进入Dos视窗,然后键入 rundll32exe userexe,restartwindows,再按下回车键,这时你将看到,机器被重启了!怎么样,是不是很有趣?

当然,Rundll的功能绝不仅仅是重启你的机器。其实,Rundll者,顾名思义,执行Dll也,它的功能就是以命令列的方式呼叫Windows的动态链结库,Rundll32exe与Rundllexe的区别就在于前者是呼叫32位的链结库,而后者是运用于16位的链结库,它们的命令格式是:

RUNDLLEXE ,,

这里要注意三点:1Dll档案名中不能含有空格,比如该档案位于 c:\ProgramFiles\目录,你要把这个路径改成c:\Progra~1\;2Dll档案名与Dll入口点间的逗号不能少,否则程式将出错并且不会给出任何资讯!3这是最重要的一点:Rundll不能用来呼叫含返回值参数的Dll,例如Win32API中的 GetUserName(),GetTextFace()等。在Visual Basic中,提供了一条执行外部程式的指令Shell,格式为:

Shell “命令列”

如果能配合Rundll32exe用好Shell指令,会使您的VB程式拥有用其他方法难以甚至无法实现的效果:仍以重启为例,传统的方法需要你在VB工程中先建立一个模组,然后写入WinAPI的声明,最后才能在程式中呼叫。而现在只需一句:

Shell “rundll32exe userexe,restartwindows”就搞定了!是不是方便多了?

实际上,Rundll32exe在呼叫各种Windows控制面板和系统选项方面有著独特的优势。下面,我就将本人在因特网上收集的有关Rundll的指令列举如下(很有用的,能省去你很多呼叫Windows API的时间!!),供大家在程式设计中引用:

命令列: rundll32exe shell32dll,Control_RunDLL

功能: 显示控制面板

命令列: rundll32exe shell32dll,Control_RunDLL accesscpl,,1

功能: 显示“控制面板-辅助选项-键盘”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL accesscpl,,2

功能: 显示“控制面板-辅助选项-声音”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL accesscpl,,3

功能: 显示“控制面板-辅助选项-显示”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL accesscpl,,4

功能: 显示“控制面板-辅助选项-滑鼠”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL accesscpl,,5

功能: 显示“控制面板-辅助选项-传统”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL sysdmcpl @1

功能: 执行“控制面板-添加新硬体”向导。

命令列: rundll32exe shell32dll,SHHelpShortcuts_RunDLL AddPrinter

功能: 执行“控制面板-添加新印表机”向导。

命令列: rundll32exe shell32dll,Control_RunDLL appwizcpl,,1

功能: 显示 “控制面板-添加/删除程式-安装/卸载” 面板。

命令列: rundll32exe shell32dll,Control_RunDLL appwizcpl,,2

功能: 显示 “控制面板-添加/删除程式-安装Windows” 面板。

命令列: rundll32exe shell32dll,Control_RunDLL appwizcpl,,3

功能: 显示 “控制面板-添加/删除程式-启动盘” 面板。

命令列: rundll32exe syncuidll,Briefcase_Create

功能: 在桌面上建立一个新的“我的公文包”。

命令列: rundll32exe diskcopydll,DiskCopyRunDll

功能: 显示复制软碟视窗

命令列: rundll32exe apwizcpl,NewLinkHere %1

功能: 显示“建立快捷方式”的对话框,所建立的快捷方式的位置由%1参数决定。

命令列: rundll32exe shell32dll,Control_RunDLL timedatecpl,,0

功能: 显示“日期与时间”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL timedatecpl,,1

功能: 显示“时区”选项视窗。

命令列: rundll32exe rnauidll,RnaDial [某个拨号连接的名称]

功能: 显示某个拨号连接的拨号视窗。如果已经拨号连接,则显示目前的连接状态的视窗。

命令列: rundll32exe rnauidll,RnaWizard

功能: 显示“新建拨号连接”向导的视窗。

命令列: rundll32exe shell32dll,Control_RunDLL deskcpl,,0

功能: 显示“显示属性-背景”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL deskcpl,,1

功能: 显示“显示属性-荧屏保护”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL deskcpl,,2

功能: 显示“显示属性-外观”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL deskcpl,,3

功能: 显示显示“显示属性-属性”选项视窗。

命令列: rundll32exe shell32dll,SHHelpShortcuts_RunDLL FontsFolder

功能: 显示Windows的“字体”档案夹。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @3

功能: 同样是显示Windows的“字体”档案夹。

命令列: rundll32exe shell32dll,SHformatDrive

功能: 显示格式化软碟对话框。

命令列: rundll32exe shell32dll,Control_RunDLL joycpl,,0

功能: 显示“控制面板-游戏控制器-一般”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL joycpl,,1

功能: 显示“控制面板-游戏控制器-进阶”选项视窗。

命令列: rundll32exe mshtmldll,PrintHTML (HTML文档)

功能: 列印HTML文档。

命令列: rundll32exe shell32dll,Control_RunDLL mlcfg32cpl

功能: 显示Microsoft Exchange一般选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @0

功能: 显示“控制面板-滑鼠” 选项 。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @1

功能: 显示 “控制面板-键盘属性-速度”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @1,,1

功能: 显示 “控制面板-键盘属性-语言”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @2

功能: 显示Windows“印表机”档案夹。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @3

功能: 显示Windows“字体”档案夹。

命令列: rundll32exe shell32dll,Control_RunDLL maincpl @4

功能: 显示“控制面板-输入法属性-输入法”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL modemcpl,,add

功能: 执行“添加新调制解调器”向导。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl,,0

功能: 显示“控制面板-多媒体属性-音频”属性页。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl,,1

功能: 显示“控制面板-多媒体属性-视频”属性页。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl,,2

功能: 显示“控制面板-多媒体属性-MIDI”属性页。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl,,3

功能: 显示“控制面板-多媒体属性-CD音乐”属性页。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl,,4

功能: 显示“控制面板-多媒体属性-设备”属性页。

命令列: rundll32exe shell32dll,Control_RunDLL mmsyscpl @1

功能: 显示“控制面板-声音”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL netcplcpl

功能: 显示“控制面板-网路”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL odbccp32cpl

功能: 显示ODBC32资料管理选项视窗。

命令列: rundll32exe shell32dll,OpenAs_RunDLL {drive:\path\filename}

功能: 显示指定档案(drive:\path\filename)的“打开方式”对话框。

命令列: rundll32exe shell32dll,Control_RunDLL passwordcpl

功能: 显示“控制面板-密码”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL powercfgcpl

功能: 显示“控制面板-电源管理属性”选项视窗。

命令列: rundll32exe shell32dll,SHHelpShortcuts_RunDLL PrintersFolder

功能: 显示Windows“印表机”档案夹。(同rundll32exe shell32dll,Control_RunDLL maincpl @2)

命令列: rundll32exe shell32dll,Control_RunDLL intlcpl,,0

功能: 显示“控制面板-区域设置属性-区域设置”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL intlcpl,,1

功能: 显示“控制面板-区域设置属性-数字”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL intlcpl,,2

功能: 显示“控制面板-区域设置属性-货币”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL intlcpl,,3

功能: 显示“控制面板-区域设置属性-时间”选项视窗。

命令列: rundll32exe shell32dll,Control_RunDLL intlcpl,,4

功能: 显示“控制面板-区域设置属性-日期”选项视窗。

命令列: rundll32exe deskcpl,InstallScreenSaver [荧屏保护档案名]

功能: 将指定的荧屏保护档案设置为Windows的屏保,并显示荧屏保护属性视窗。

命令列: rundll32exe shell32dll,Control_RunDLL sysdmcpl,,0

功能: 显示“控制面板-系统属性-传统”属性视窗。

命令列: rundll32exe shell32dll,Control_RunDLL sysdmcpl,,1

功能: 显示“控制面板-系统属性-设备管理器”属性视窗。

命令列: rundll32exe shell32dll,Control_RunDLL sysdmcpl,,2

功能: 显示“控制面板-系统属性-硬体配置档案”属性视窗。

命令列: rundll32exe shell32dll,Control_RunDLL sysdmcpl,,3

功能: 显示“控制面板-系统属性-性能”属性视窗。

命令列: rundll32exe userexe,restartwindows

功能: 强行关闭所有程式并重启机器。

命令列: rundll32exe userexe,exitwindows

功能: 强行关闭所有程式并关机。

命令列: rundll32exe shell32dll,Control_RunDLL telephoncpl

功能: 显示“拨号属性”选项视窗

命令列: rundll32exe shell32dll,Control_RunDLL themescpl

功能: 显示“桌面主旨”选项面板

当然,不止是VisualBasic,象DelphiVisualC++等其他程式设计语言也可以通过呼叫外部命令的方法来使用Rundll的这些功能,具体方法这里就不再详细叙述了。灵活的使用Rundll,一定会使你的程式设计轻轻松松,达到事半功倍的效果!

rundll32exe也是控制面板中各种设置的进程

[义项一]

RUNDLL32EXE经常导致的占用很大CPU原因:

1、被病毒感染。 解决办法:升级最新杀软全盘杀毒。

2、杀软显示无毒、无木马。 解决办法:可能下载了紫光V6输入法,只要不把V6设为首选输入法,则一切正常。

RUNDLL32病毒清除方法

计算机故障现象:

1所有的应用程序都打不开,提示说找不到关联程序。其实这是木马程序在作怪,当使用木马克星除去木马之后,文件关联已经被木马程序修改,此时可以通过更改注册表来重新更改文件的关联,修改如下:

HKEY_CLASSES_ROOT->EXEFILE->SHELL->OPEN COMMAND 键值改为 "%1 %"

HKEY_CLASSES_ROOT->EXEFILE->SHELL->runas command 键值改为"%1 %"

2系统总是提示找不到RUNDLL32EXE文件,如果系统不存在改文件了,从别的机器上复制一个就OK了,如果机器上有改文件则说明改文件已被感染木马,使用木马克星杀一下毒就OK了

这算是Delphi的一个BUG吧,还是怎么地。Locate函数确实不太好使。

你给出来的是中文,我这里并不习惯使用中文补丁,所以提示的是英文。

我以前也遇到过类似的问题,最后我自己写了一个MyLocate函数,自己对数据集中的记录做循环判断解决了。

虽然执行效率很慢,不过当时在项目上赶时间,需要尽完搞完,实在没时间去研究了。事后也没时间去优化他了。

以上就是关于delphi快速画图时报错全部的内容,包括:delphi快速画图时报错、delphi 200分请教一个Delphi中如何定位错误代码的问题。、DELPHI中出现了无法为更新定位行,一些值可能已在最后一次读取后已更改"S的警告等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9275389.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存