解决方法
来自MSDN Full Article
ASP实施
本机ASP会话只能将会话数据存储在内存中.为了将会话数据存储到sql Server,编写自定义Microsoft®VisualBasic®6.0COM对象来管理会话状态,而不是使用本机会话对象.此COM对象将在每个Web请求的开头实例化,并从sql Server重新加载会话数据. ASP脚本完成后,此对象将终止,会话状态将持久保存回sql Server.
Visual Basic 6 COM会话对象的主要用途是提供对Microsoft®InternetInformation Server内部对象的访问. Visual Basic 6.0 COM会话对象使用SessionUtility组件的mySession类来保存会话状态,使用SessionUtility的SessionPersistence类来加载和保存sql Server的会话数据. mySession和SessionPersistence类使用regasm.exe实用程序公开为COM对象. regasm.exe实用程序可以为COM客户端注册和创建类型库以使用Framework类.
在构造对象期间重新加载会话状态信息.构造函数(class_initialize)将首先从Application对象检索会话cookie,会话超时(SessionTimeOut)和数据库连接字符串(SessionDSN),并创建类mySession的实例以保存会话数据.然后构造函数将尝试使用给定的cookie从sql Server重新加载会话数据.如果sql Server没有会话信息,或者会话已过期,则将发出新的cookie.如果sql Sever确实返回了会话状态数据,则会话状态将存储在mySession对象中.