问题标签 [mts]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - ASP、Server.CreateObject、MTS 和 C# 对象池——重用问题?
我正在尝试调试“偶尔”问题。我们有一个需要发送电子邮件的经典 ASP 应用程序。无论出于何种原因,它都使用通过 COM 公开的 C# 对象来执行此发送;c# 对象是 MailMessage 和 SMTPClient 的简单包装器,使用 SendAsync 进行发送。在 ASP 方面,在发送每封邮件之前,该对象是 Server.CreateObject(),但邮件消息是在一个紧密的循环中发送的。这应该会为每条消息生成一个新的 COM 对象(因此也是一个新的 c# 对象)。但是,我们看到消息被丢弃并且消息被发送到多个收件人,就好像该对象正在被重用一样。
在对 MTS 进行了一些研究(从没想过我会再去那里!)我记得/发现 Server.CreateObject 通过 MTS 并且 MTS 将汇集 COM 对象以“帮助”我。我们更改了 ASP 代码,改为创建一个新的 ActiveXObject,我认为它没有通过 MTS,但我们遇到了同样的问题。
假设 .net 中的 ServicedComponent 接口是 ObjectControl 接口的 .net/com+ 版本,我是否正确?如果我从 ServicedComponent 继承,那么该对象是否会被设置为允许 pooling = false?我宁愿在 ASP 中进行更改,但如果这不可能,那么我也可以进行 c# 更改。
想法?
编辑:页面语言也是 JScript,而不是“普通”的 VBScript。
vb6 - 使用 regsvr32 部署到 com+/MTS 有什么区别?
我们有一个遗留的 VB6 组件,它是 com+/MTS,由 asp classic 使用。工作人员在部署方面遇到问题。
仅使用 regsvr32 注册 IIS 将使用的 DLL 会有什么危害吗?
或者——我不会用 10 英尺的柱子接触 COM+——那么是否有合适的单行命令来使用 11 英尺的柱子向 COM+/MTS 注册 VB6 组件?我的 google fu 让我失望了。
asp.net - .NET 应用程序服务器与 Java 应用程序服务器之间的差异
与大多数 Java 应用程序服务器使用的模型相比,我想更好地理解 .NET 应用程序服务器模型的原因。
在我看到的大多数 ASP.NET Web 应用程序的情况下,业务逻辑都托管在 Web 服务器的 asp.net 主机进程中。另一种常见的方法是拥有一个物理或逻辑不同的层来托管您的业务对象,然后作为 Web 服务公开或通过 WCF 等机制进行访问。当需要更高的规模时,通常但似乎并不总是使用后一种方法。在 COM 对象时代,我看到 Microsoft Transaction Server (MTS) 和后来的 COM+ 托管用于托管包含业务逻辑的 COM 对象,MTS(理论上)管理对象生命周期、事务、并发 yada yada。这种模式在很大程度上似乎已经在 ASP.NET 领域消失了。
在 Java 世界中,您可能将 Apache 与 Tomcat 作为 servlet 容器,并将您的业务对象托管在 Tomcat 中。在这种情况下,Tomcat 提供了与 MTS 在 .NET 世界中提供的功能类似的功能。
几个问题:
- 为什么 Microsoft 与 Java 的应用程序服务器方法存在根本差异?这一定是创建这些框架时的架构/设计选择。
- 每种方法的优缺点是什么?
- 为什么微软从 MTS 托管模型(类似于 Tomcast servlet 托管模型)转移到更常见的当前方法,即将业务对象作为 Web 服务器的 ASP.NET 进程的一部分?
- 如果您想在今天的 ASP.NET 应用程序中实现 MTS 类型方法或 Tomcat 类型方法,我假设一种常见模式是在某些 IIS 进程中托管业务对象(可能在某些不同的物理或逻辑层上)并通过 WCF 访问(或标准 asmx Web 服务,等等)。这是一个正确的假设吗?
c# - 在一个事务中更新数据库的托管和非托管代码?
在 C# 中,我有一个更新数据库的 OracleConnection,以及对 C# 调用以更新数据库的旧版 VB6 DLL 的引用(在 DLL 中,它使用 ADODB.Connection 对象)。
我需要将它们都包装在一个大事务中,以便托管和非托管更新一起回滚或提交。
我尝试切换 C# 类,使其继承自 System.EnterpriseServices.ServicedComponent 并用 [Transaction(TransactionOption.Required)] 装饰,然后在启动调用序列的方法上使用 [AutoComplete] 最终命中 OracleConnection 和 VB6 DLL 调用。
像这样:
但是,当我的测试工具尝试实例化 MyClassTx 时,我收到此错误:
我已经验证我的类是公共的、具体的,并且有一个无参数的构造函数。不过,它不会实例化。
我是否需要对我的程序集进行强类型化并将其放入 COM+ 包中,然后才能对其进行调试?我会假设,使用 VS2010,我可以直接进入 ServicedComponent 继承代码。
我使用 COM+ 已经 8 年了,这是我第一次尝试让它在 C# 中工作,所以任何帮助都将不胜感激!
另外,如果我在这里走的是一条愚蠢的道路,并且有一种更简单的方法可以将我的托管和非托管代码放入同一个事务中,请赐教!
在 Google 上呆了几个小时并没有多大帮助。
非常感谢!!
com+ - com+ 应用程序导出问题。应用程序代理已禁用
我有一个要导出为代理的 com + 应用程序。问题是当我打开导出向导时,“应用程序代理...”单选框被禁用。
任何想法?
谢谢
vb6 - vb6 为什么要无人值守执行并保留在内存集中?
14 年前,当我还是个新手时,为经典 ASP 设置组件不在我的薪酬等级中……然而,现在,我回到了未来,我发现自己不得不针对经典 ASP 项目进行维护和编码使用 COM 对象。
现在,我发现自己正在查看 1999 年至 2001 年的古代文章,我想知道是否有人对为什么 COM (ActiveX .dll) 应该设置无人值守执行和保留在内存中的原因有一个很好的答案?
我还应该注意,该站点的当前架构是这些刚刚放在服务器上的 .dll(当然是注册的)。我想知道 COM+ 和 MTS。我们现在坚持使用经典的 ASP(长话短说)。但是,我希望尽快迁移到 .NET。因此,如果我可以最大限度地减少当前架构的维护时间,那将很有帮助。您能否也给我一个为什么我们应该使用 COM+ 和 MTS 的理由?以及添加这些功能所涉及的内容。
vb6 - Windows 7 Ultimate 上是否有 Microsoft 事务服务器资源管理器?
我需要为高级国家文凭课程 (BTEC) “使用 MTS 创建包和部署组件”。这可以用 Windows 7 Ultimate 和 VB6 完成吗?我意识到这个壮举可能已经过时,但我在教学大纲中没有发言权,我找不到任何有用的东西。
谢谢
.net - .net 应用程序可以使用什么来控制视频文件(尤其是 mts 和 m2ts)?
我正在尝试构建一个用于分析视频文件的应用程序;暂停、播放、慢进/后退、计时和计时。
我正在尝试将 MediaElement 用于 Wpf。但它不支持对某些文件类型(如 MTS,我会经常使用)放慢电影速度。
什么是最好的方法,或者最好的控制,或者最好的库?
installation - 如何使用 Windows 2008r2 服务器中的注册表项找出 oramts 的 oracle 12c 安装?
我们正在使用自定义安装程序进行安装。要运行我们的应用程序,我们需要安装 oramts,在安装应用程序之前,我们会进行先决条件测试以检查是否安装了所有必需的组件。在早期版本中,我们使用注册表项“ [SOFTWARE]\ORACLE\KEY_OraClient11g_home1\ORAMTS_CP_TRACE_DIR
”来查找是否安装了 oramts。但是在当前安装中,我们无法找到要使用的注册表项。
terminal - Telnet:WiFi 与 Telnet 连接时出现奇怪的结果
几天前我买了一个新的 MTS Wi-Fi Dongle,今天在使用它时,我使用我的 Android 设备对 192.168.1.1 进行了端口扫描,令人惊讶的是端口 23(telnet)是打开的。输入 telnet 192.168.1.1 后,终端窗口显示如下结果,
VENKY V2.0 Welcome You!!!
VENKY> 过
了一段时间,它开始显示以下消息,
^HRSSILVL : 60
^HRSSILVL : 80
^HRSSILVL : 60
等等,我尝试了几个 Linux 命令(我知道它不会工作但仍然)但它们都没有工作,一个我已经弄清楚是版本命令,它显示版本,有谁知道 VENKY 是什么或遇到过同样的事情......?