我接管了一个离开程序员的Classic ASP对象,我正在尝试调试一些DAC代码。问题是我真的不明白DAC是什么或它是如何工作的 - 我找不到DAC代码“活着”。
以下是单独的代码行:
set runObj = server.CreateObject("DAC.clsDb_container")
我们使用SQL Server,并在“存储过程”和“用户定义”函数下查看了企业管理器,但是我没有看到任何名为clsDB_container的内容。
我可以找到这个DAC对象代码的任何建议吗?
上下文中的完整代码:
FUNCTION getNewGUID
Dim runCON, runObj, runCMD
DebugWrite( "<BEGIN> iRoutines.asp|getNewGUID (a) GUID=" & GUID & " dealernum=" & dealernum )
set runObj = server.CreateObject("DAC.clsDb_container")
if not runObj.run_query("EXEC sproc_createGUID") then
traperror(runObj.DB_ErrStr)
else
GUID = replace(runObj.get_by_ordinal(0),"-","")
dealernum_len = trim(cstr(len(dealernum)))
set runObj = nothing
end if
getNewGUID = dealernum_len & dealernum & GUID
DebugWrite( "<END> iRoutines.asp|getNewGUID (b) getNewGUID=" & getNewGUID & " dealernum=" & dealernum )
END FUNCTION
答案 0 :(得分:3)
这看起来像是作为站点的数据访问层编写的自定义COM对象。
对象的名称为DAC.clsDb_container
,并且位于Web服务器上的某个DLL中。
这不是标准的 - 如果你想进一步开悟,你需要寻找(我在这里猜测)创建它的VB6或Delphi代码。
答案 1 :(得分:2)
如果您需要的只是一个GUID,那么您可以这样做
<%
Function createGuid()
Set TypeLib = Server.CreateObject("Scriptlet.TypeLib")
dim tg : tg = TypeLib.Guid
createGuid = left(tg, len(tg)-2)
Set TypeLib = Nothing
End Function
%>