|
发表于 2020-10-16 14:23:23
|
显示全部楼层
河南省三门峡市
.版本 2
.子程序 免zc调用, 逻辑型, 公开, 调用此函数来实现免zcdm.dll
.参数 DmRegDll文件全路径, 文本型, 可空, 例如 c:\test\DmReg.dll 可改名,如果为空,则释放文件到运行目录
.参数 DmDll文件全路径, 文本型, 可空, 例如 c:\test\Dm.dll 可改名,如果为空,则释放文件到运行目录
.参数 调用方式, 整数型, 可空, 0表示STA,1表示MTA
.局部变量 DmReg目录, 文本型
.局部变量 DmReg路径, 文本型
.局部变量 Dm目录, 文本型
.局部变量 Dm路径, 文本型
.如果 (是否为空 (DmRegDll文件全路径) = 真)
DmReg目录 = 取运行目录 ()
.如果 (文件是否存在 (DmReg目录 + “\DmReg.dll”) = 假)
.如果 (写到文件 (DmReg目录 + “\DmReg.dll”, #大漠免zcReg) = 真)
DmReg路径 = DmReg目录 + “\DmReg.dll”
.否则
DmReg路径 = “”
.如果结束
.否则
DmReg路径 = DmReg目录 + “\DmReg.dll”
.如果结束
.否则
.如果 (文件是否存在 (DmRegDll文件全路径) = 真)
DmReg路径 = DmRegDll文件全路径
.否则
DmReg目录 = 文件_取目录 (DmRegDll文件全路径)
.如果 (文件是否存在 (DmReg目录 + “\DmReg.dll”) = 假)
.如果 (写到文件 (DmReg目录 + “\DmReg.dll”, #大漠免zcReg) = 真)
DmReg路径 = DmReg目录 + “\DmReg.dll”
.否则
DmReg路径 = “”
.如果结束
.否则
DmReg路径 = DmReg目录 + “\DmReg.dll”
.如果结束
.如果结束
.如果结束
.如果 (是否为空 (DmDll文件全路径) = 真)
Dm目录 = 取运行目录 ()
.如果 (文件是否存在 (Dm目录 + “\Dm.dll”) = 假)
.如果 (写到文件 (Dm目录 + “\Dm.dll”, #大漠DLL) = 真)
Dm路径 = Dm目录 + “\Dm.dll”
.否则
Dm路径 = “”
.如果结束
.否则
Dm路径 = Dm目录 + “\Dm.dll”
.如果结束
.否则
.如果 (文件是否存在 (DmDll文件全路径) = 真)
Dm路径 = DmDll文件全路径
.否则
Dm目录 = 文件_取目录 (DmDll文件全路径)
.如果 (文件是否存在 (Dm目录 + “\Dm.dll”) = 假)
.如果 (写到文件 (Dm目录 + “\Dm.dll”, #大漠DLL) = 真)
Dm路径 = Dm目录 + “\Dm.dll”
.否则
Dm路径 = “”
.如果结束
.否则
Dm路径 = Dm目录 + “\Dm.dll”
.如果结束
.如果结束
.如果结束
.如果真 (DmReg路径 ≠ “” 且 Dm路径 ≠ “”)
DLL命令调用转向 (DmReg路径, “SetDllPathA”)
.如果 (是否为空 (调用方式) = 真)
SetDllPathA (Dm路径, 0)
.否则
.如果 (调用方式 = 0 或 调用方式 = 1)
SetDllPathA (Dm路径, 调用方式)
.否则
返回 (假)
.如果结束
.如果结束
返回 (真)
.如果真结束
返回 (假)
|
|