一段Delphi代码,求解释

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一段Delphi代码,求解释相关的知识,希望对你有一定的参考价值。

varProcessInfo:TProcessInformation;
StartUp:TStartupInfo; FillChar(StartUp,SizeOf(StartUp),$00);
StartUp.wShowWindow:=SW_HIDE;
if CreateProcess(nil,PChar(BatFileName),nil,nil,False,IDLE_PRIORITY_CLASS,nil,nil
,StartUp,ProcessInfo) then
begin
CloseHandle(ProcessInfo.hProcess);
CloseHandle(ProcessInfo.hThread);
end;
Application.Terminate; 麻烦了。详细点谢谢。

var //定义
ProcessInfo:TProcessInformation; //进程类
StartUp:TStartupInfo; FillChar(StartUp,SizeOf(StartUp),$00); //初始化字符数据
StartUp.wShowWindow:=SW_HIDE; //窗体隐藏
if CreateProcess(nil,PChar(BatFileName),nil,nil,False,IDLE_PRIORITY_CLASS,nil,nil
,StartUp,ProcessInfo) then //判断进程是否已经被创建,如已创建则
begin
CloseHandle(ProcessInfo.hProcess); //关闭进程
CloseHandle(ProcessInfo.hThread); //关闭线程
end;
Application.Terminate; //结束程序

不知道有没有达到要求
参考技术A 判断进程是否创建,如果创建了就关闭这个进程

51单片机 ,读写stc 内部EEPROM 中的数据,所谓 IAP 方法是怎么个原理?求解释,一定采纳

具体程序怎么操作?

以下是我曾经做过的东东中的有关EEPROM读写的一段程序,供参考。
;-------------------写参数到EEROM-----------------------------
PARAPUT:
MOV DPTR,#0000H
LCALL IAP_Erase
MOV DPTR,#0000H
MOV R0,#60H
MOV R1,#16
PARAPUT1:
MOV A,@R0
LCALL IAP_WRITE
INC R0
INC DPTR
DJNZ R1,PARAPUT1
RET
;-------------------从EEROM中读出参数-----------------------------
PARAGET:
MOV DPTR,#0000H
MOV R0,#60H
MOV R1,#16
PARAGET1:
LCALL IAP_READ
MOV @R0,A
INC R0
INC DPTR
DJNZ R1,PARAGET1
RET
;------------------------------------------------
;读一字节,调用前需打开 IAP 功能,入口:DPTR = 字节地址,返回:A = 读出字节
IAP_READ:
MOV IAP_CONTR,#ENABLE_IAP ;打开 IAP 功能, 设置 Flash 操作等待时间
MOV IAP_CMD,#ISP_IAP_BYTE_READ ;设置为IAP/ISP/EEPROM字节读模式命令
MOV IAP_ADDRH,DPH ;设置目标单元地址的高8位地址
MOV IAP_ADDRL,DPL ;设置目标单元地址的低8位地址
;CLR EA
MOV IAP_TRIG,#5AH ;先送5Ah,再送A5h到ISP/IAP触发寄存器,每次都需如此
MOV IAP_TRIG,#0A5H ;送完A5h后,ISP/IAP命令立即被触发起动
NOP
MOV A,IAP_DATA ;读出的数据在IAP_DATA单元中,送入累加器A
;SETB EA
LCALL IAP_Disable ;关闭 IAP 功能, 清相关的特殊功能寄存器,使CPU处于安全状态,
;一次连续的IAP操作完成之后建议关闭IAP功能,不需要每次都关
RET
;------------------------------------------------
;字节编程,调用前需打开 IAP 功能,入口:DPTR = 字节地址, A=须编程字节的数据
IAP_WRITE:
MOV IAP_CONTR,#ENABLE_IAP ;打开 IAP 功能, 设置 Flash 操作等待时间
MOV IAP_CMD,#ISP_IAP_BYTE_PROGRAM ;设置为IAP/ISP/EEPROM字节编程模式命令
MOV IAP_ADDRH,DPH ;设置目标单元地址的高8位地址
MOV IAP_ADDRL,DPL ;设置目标单元地址的低8位地址
MOV IAP_DATA,A ;要编程的数据先送进ISP_DATA寄存器
;CLR EA
MOV IAP_TRIG,#5AH ;先送5Ah,再送A5h到ISP/IAP触发寄存器,每次都需如此
MOV IAP_TRIG,#0A5H ;送完A5h后,ISP/IAP命令立即被触发起动
NOP
;SETB EA
LCALL IAP_Disable ;关闭 IAP 功能, 清相关的特殊功能寄存器,使CPU处于安全状态,
;一次连续的IAP操作完成之后建议关闭IAP功能,不需要每次都关
RET
;------------------------------------------------
;擦除扇区, 入口:DPTR = 扇区地址
IAP_Erase:
MOV IAP_CONTR,#ENABLE_IAP ;打开 IAP 功能, 设置 Flash 操作等待时间
MOV IAP_CMD,#03H ;设置为IAP/ISP/EEPROM扇区擦除模式命令
MOV IAP_ADDRH,DPH ;设置目标单元地址的高8位地址
MOV IAP_ADDRL,DPL ;设置目标单元地址的低8位地址
;CLR EA
MOV IAP_TRIG,#5AH ;先送5Ah,再送A5h到ISP/IAP触发寄存器,每次都需如此
MOV IAP_TRIG,#0A5H ;送完A5h后,ISP/IAP命令立即被触发起动
NOP
;SETB EA
LCALL IAP_Disable ;关闭 IAP 功能, 清相关的特殊功能寄存器,使CPU处于安全状态,
;一次连续的IAP操作完成之后建议关闭IAP功能,不需要每次都关
RET
;------------------------------------------------
IAP_Disable:
;关闭 IAP 功能, 清相关的特殊功能寄存器,使CPU处于安全状态,
;一次连续的IAP操作完成之后建议关闭IAP功能,不需要每次都关
MOV IAP_CONTR,#0 ;关闭 IAP 功能
MOV IAP_CMD,#0 ;清命令寄存器,使命令寄存器无命令,此句可不用
MOV IAP_TRIG,#0 ;清命令触发寄存器,使命令触发寄存器无触发,此句可不用
MOV IAP_ADDRH,#0FFH ;送地址高字节单元为00,指向非EEPROM区
MOV IAP_ADDRL,#0FFH ;送地址低字节单元为00,防止误操作
RET
参考技术A 这个数据手册里有;IAP是在系统可编程,至于原理就不要管了,估计你不搞芯片设计。

以上是关于一段Delphi代码,求解释的主要内容,如果未能解决你的问题,请参考以下文章

Java报错 不懂 求解释

MATLAB中的图例问题,求解释。。

matlab BP神经网络训练程序求解释

CAD中一个特殊图层求解释

delphi代码,有看得明白的,麻烦给我解释一下,万分感激!

写单片机中断中(C语言) interrupt 1 using 0 1 ,0 是啥用的?求解释。