问题标签 [system.addin]
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.
wcf - 更改调度程序的托管机制
我有一个在 Windows 服务上运行的调度程序。对于每个新事件,它都会创建新线程。然后每个线程使用 AddIn Framework 加载 DLL 并执行任务。
它工作正常,但现在但根据新要求,如果我们决定这样做,或者事件需要很长时间执行,我希望能够杀死任何事件。
启动线程的代码
所以要做到这一点,我需要发布一些东西,以便调度程序可以理解并杀死特定的线程。但由于该调度程序托管在窗口服务上,我无法这样做。
任何人都可以告诉任何解决方法吗???
目前我正在努力通过创建 WCF 服务将调度功能移动到 IIS。然后我将能够调用 wcf 服务的函数,这将以某种方式杀死任何事件(线程)。
任何人都可以就这样做是否存在潜在风险提供任何意见???
提前致谢
c# - C# MAF 在不锁定 dll 的情况下激活插件
使用 System.AddIn,有没有办法在不锁定 .dll 文件的情况下加载和激活 AddIn?我想删除或覆盖该文件以加载我的 AddIn 的新版本。
目前解锁文件的唯一方法是关闭插件。但我需要让它在来电时始终保持活动状态(异步服务,是的,一场噩梦)。
或者也许还有另一种在运行时更新插件的方法,但我做得不对。我想知道这可能是正确的方法。谢谢!
c#-4.0 - System.Addin get HostView from token without activating
Is there anyway to obtain the HostView of a token without activating that token? In my program I activate the token when the wpf window loads and then, in a separate class, I need to access the HostView of a specific token.
After some initial checks online I could not find any method that would do this, so my guess is that there is not a 1:1 correlation between a token and a specific HostView (ie one token could have multiple views). Am I way off on this?
c# - 从 System.AddIn 适配器调用 Form 时,不会触发 Win Forms 按键事件
我正在使用来自 .NET 3.5 AddIn & Extensibility 功能的 System.AddIn 库。我需要在充当添加主机的现有应用程序的工具栏中添加一个按钮。我能够添加按钮并从按钮单击操作中调用自定义 Win Form。OnClick 加载项按钮,我正在调用一个加载 WebBrowserControl 的 win 表单。除了没有触发键盘事件之外,每件事都完美无缺。如果我将表单设置为对话框窗口,则会触发键盘事件。由于这种行为,我有点受阻。任何输入都会被应用。
谢谢, 唠叨
.net - 改进 FrameworkElementAdapters.ViewToContractAdapter
我在 Host 和 AddIn 之间使用 MAF(System.addin) 和 FrameworkElements。
我在适配器中使用 FrameworkElementAdapters.ViewToContractAdapter 和 FrameworkElementAdapters.ContractToViewAdapter。
我将 FrameworkElementAdapters.ViewToContractAdapter 与 stopwatcher 一起使用,结果以秒为 1,3 s 。
是否可以改进 FrameworkElementAdapters.ViewToContractAdapter 的时间?
谢谢
.net - MAF (System.AddIn) 属性是一个集合
我正在尝试使用 .NET4 System.AddIn 命名空间编写 MAF 插件。AddIn 有一个属性,它是一个名为“ReportParameters”的自定义类型的集合;AddIn 上还有其他属性,它们是 mscorlib 中包含的本机类型(即:整数、布尔值、字符串等),我从下面的代码片段中省略了这些属性,因为它们工作正常。我正在努力使用将 ReportParameters IListContract 转换为 IList 的 Host 和 AddIn 端适配器,反之亦然。任何帮助,将不胜感激。我的管道当前定义如下(参见 Host Adapter 中的注释):
合同组装
插件视图程序集
AddIn 主机适配器组件
主机视图程序集
主机适配器组件
c# - 合同中可序列化类型的MAF(System.Addin)属性?
我们正在测试 MAF 插件以用作我们的插件框架。但我们陷入了一个基本问题。我们可以使用可序列化类型作为 IContract 参数吗?
合同和参数类型都在同一个程序集中定义:
我们能够让一切正常运行。调用 SetCurrent 会导致异常: AppDomainUnloadedException :
加载和运行插件:
插入:
c# - 从单独进程中的插件获取 WPF 应用程序中的 TextBox 焦点
我们正在使用 System.AddIn 结构来创建用于托管应用程序的应用程序。我们想要的是连接到 TextBox 在这些单独的应用程序中获得焦点的事件。
我们怎么能做到这一点?
我知道这些流程,所以我可以访问这些流程,也许可以收听消息泵?但是怎么做?要侦听哪些消息以及如何确定获得焦点的控件是否实际上是 TextBox(WPF 类型)?
希望得到您的帮助!
.net - 在 .NET 加载项和主机之间共享资源
我开发的应用程序使用带有 .NET 插件功能的插件,由System.AddIn
. 我的主机应用程序以及加载项共享一些资源,例如 WPF 嵌入字体和 XAML 图标。我想避免将它们包含在 host 和 add-ins中。有没有什么方法可以在没有太多复杂性的情况下实现这一目标?
我的应用程序已经包含 7 个部分:主机、主机端视图、主机端适配器、合同、插件端适配器、插件端视图,最后是插件。我看到的问题是,当宿主加载加载项程序集时,加载项不可能访问位于宿主程序集中的资源。
插件提供主机使用的服务。我希望我的主机提供加载项消耗的资源。
一种可能的解决方案是引入另一个包含所有资源的程序集,主机和加载项都可以访问该程序集。该解决方案的积极/消极方面是什么?就像,当它不是合同时,加载项可以依赖这个程序集的存在吗?
c# - AddIn (MAF) : 在单独的进程中运行
我有 WPF 主机应用程序,并且 AddIn 也是 WPF,它返回 UI,如下所述:
[链接] http://msdn.microsoft.com/en-us/library/bb909849%28v=vs.110%29.aspx
我想知道是否甚至可以将 WPF 插件激活为外部进程:看起来 WPF 插件只被认为与 AppDomain 隔离一起使用,这对我们的应用程序来说还不够好。如果 AddIn 因任何原因崩溃,我们不能让主机一直崩溃。即使加载的 AddIn 崩溃,我们也希望我们的主机应用程序能够运行。
我知道我们可以System.AddIn
通过以下方式实现这一目标:
但我有 WPF 插件不是System.AddIn
因为我们的插件有 WPF UI 组件。
我可以在新的应用程序域中激活 WPFAddIn,如下所示:
我无法获得有关使用 WPF 插件处理这种情况的任何最新信息。是否有任何可能的示例,如何在单独的进程中激活 WPF 插件或在主机中捕获未处理的异常。基本上我不能让主机在插件崩溃时死掉。我确实遵循了以下链接,但结果发现线程很旧并且没有当前信息。
如果我可以处理主机中的异常,那也很好。让我解释一下我的问题:
我有 WPF 主机“A”。有 WPF 插件“B”。
我已经在主机“A”中加载了插件“B”。AddIn“B”有一个点击按钮。当用户单击按钮时,将在 AddIn "B" 中触发事件。在这种情况下,没有可用的尝试捕获,并且从该事件中抛出一些空异常。这个未处理的异常导致我的主机(以及 WPF 应用程序)崩溃。
我正在寻找一种解决方案,我可以在主机“A”中处理此异常,卸载插件“B”并继续主机而不会发生任何崩溃。
我试过 AddInAddInSecurityLevel.FullTrust
和 AddInSecurityLevel.Internet
.
任何提示或示例都会有所帮助。