20岁生日快乐VB6! 是的,即使支持已经用了13年,VB6仍然存在。请随时骚扰我,但也请提供您对这个问题的任何见解。
我在Citrix服务器场上有一个VB6 EXE。数据是通过COM +从托管VB6 COM + DLL的另一台服务器获取的。COM +软件包已导出并安装在每台Citrix计算机上。
EXE和COM + DLL都写入一个旧的记录器。我试图摆脱旧的记录器,转而使用Log4Net版本。
我编写了一个.NET COM DLL,其唯一目的是写入日志。
EXE使用.NET DLL进行日志记录(只要我将log.config与EXE放在同一文件夹中),但COM +组件不会。我尝试将log.config复制到各个文件夹中,希望这可能是问题所在。我还写了另一个EXE来测试.NET DLL,它可以工作。
只是为了踢球,我尝试在COM + DLL上使用后期绑定,但这也无济于事。我在Citrix计算机和COM服务器上注册了.Net COM DLL。
我还尝试从vb6写入事件日志-均失败。
我确定我的COM + DLL正在实现,因为没有日志被写入旧的记录器。另外,从本地计算机运行时,我从EXE和COM + DLL获取日志。
这是一些代码...
这是我的VB.NET COM记录代码
Imports System.IO
Imports log4net
<Assembly: Config.XmlConfigurator(ConfigFile:="Log.config", Watch:=True)>
<ComClass(log.ClassId, log.InterfaceId, log.EventsId)>
Public Class log
Public logger As log4net.ILog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)
#Region "COM GUIDs"
Public Const ClassId As String = "6fae24c7-f86b-4fab-8b49-1d441de5bd18"
Public Const InterfaceId As String = "223a30c4-ec1e-45a6-82d3-d23cd4c933f9"
Public Const EventsId As String = "2087d93e-dd38-4cd1-b757-44dee322a8e3"
Public Property TraceExtension As …Run Code Online (Sandbox Code Playgroud) AS400 SQL DDL将列添加到现有表的语法是什么?我还需要指定长字段和短字段名称.
(SQL - 结构化查询语言)(DDL - 数据定义语言:这是更改表结构或可以修改数据库设置的SQL)