草庐IT

托管所

全部标签

c# - 拖放到托管的浏览器控件

我有一个在.NET2上编写的WinForms程序,它托管一个网络浏览器控件并从已知服务器呈现asp.net页面。我希望能够将我的winforms应用程序中的TreeView中的树节点拖到托管网页中的特定位置,并让它在那里触发javascript事件。目前,我可以实现IDocHostUIHandler接口(interface)并在浏览器控件上获取拖放事件,然后调用Navigate("javascript:fire_event(...)")控制在页面上执行脚本。但是,我希望它仅在我将数据放在页面的特定部分时起作用。我想,一个解决方案是咬紧牙关,以activex控件的形式编写一个自定义浏览器

c# - 通过 COM 包装器从托管代码调用 COM 可见托管组件

我有一个第3方组件,可以说FIPreviewHandler来处理预览,它实现了IPreviewHandler。FIPreviewHandler被实现为托管组件,并通过互操作的方式使用IPreviewHandler接口(interface)和相关接口(interface)。FIPreviewHandler是使用regasm.exe作为COM注册的。我有一个也是托管的客户端应用程序。我想在我的应用程序中创建一个FIPreviewHandler实例作为COM组件。我有一个定义IPreviewHandler和相关接口(interface)的互操作程序集。当我使用Activator.Create

c# - 停止非托管委托(delegate)的垃圾收集

我最近一直在尝试使用R.NET让R与.NET和C#对话。到目前为止一切顺利,但我遇到了一个我似乎无法解决的障碍。我对简单的基本命令没有任何问题。我制作了一个简单的计算器,以及将数据导入数据网格的东西。但是现在我不断收到以下错误:Acallbackwasmadeonagarbagecollecteddelegateoftype'R.NET!RDotNet.Internals.blah3::Invoke'.Thismaycauseapplicationcrashes,corruptionanddataloss.Whenpassingdelegatestounmanagedcode,they

c# - 非非托管类型和托管类型有什么区别?

当我出于实验目的编写以下代码片段时,它引发了悬停错误(参见屏幕截图):Cannotdeclarepointertonon-unmanagedtype'dynamic'片段:dynamic*pointerToDynamic=&fields;虽然代码显然是不允许的(你不能获取托管类型的地址),但它向我提出了一个问题:什么是非非托管类型,它与托管类型?还是VisualStudio只是想搞笑? 最佳答案 非托管指针和非托管指针之间存在差异。托管指针是托管堆上对象的句柄,AFAIK仅在托管C++中可用。它等效于C#对对象的引用。另一方面,非托

c# - 使用哪一个 : Managed vs. 非托管哈希算法

在常规C#应用程序中,哪个类用于哈希:xxxManaged或xxx(即SHA1Managed与SHA1)为什么? 最佳答案 以***Cng结尾的非托管哈希,即SHA256Cng,也会有平台限制。它们比托管替代方案快很多,但会在WindowsXP等运行时失败。如果您知道您的程序将始终在Windows7、VistaSP1或2008上运行,那么它们的性能通常会比托管版本好很多,即使有native互操作开销也是如此。如果您正在编写一个通用程序,***Managed类将更易于使用,因为它们将始终有效。

c# - 从 Exchange Web 服务托管 API 获取收件箱中的所有邮件并将它们存储为 .eml 文件

我想使用EWS托管API获取收件箱文件夹中的所有邮件并将它们存储为.eml.问题在于获取(1)所有邮件,其中包含(2)所有header(例如发件人、收件人、主题)(我保留了from的那些值的信息),to和其他地方的其他属性,所以我也需要它们)和(3)byte[]EmailMessage.MimeContent.Content。其实我对Microsoft.Exchange.WebServices.Data.ItemView,Microsoft.Exchange.WebServices.Data.BasePropertySet和Microsoft.Exchange.WebServices.

c# - EWS 托管 API 查找具有 ItemID 的项目

我正在尝试根据项目的唯一ID从已删除项目文件夹中查找项目ItemIdid=newItemId("zTK6edxaI9sb6AAAQKqWHAAA");SearchFilter.IsEqualTofilter=newSearchFilter.IsEqualTo(ItemSchema.Id,id);ItemViewview=newItemView(10);view.PropertySet=newPropertySet(BasePropertySet.FirstClassProperties,EmailMessageSchema.Subject);FindItemsResultsresult

c# - 对 PInvoke 函数的调用使堆栈不平衡。这可能是因为托管 PInvoke .. (.NET 4)

我的项目在.NETFramework3.5中运行成功且没有错误。但是,当我将它定位到.NETFramework4时。我得到了错误:“对PInvoke函数的调用使堆栈不平衡。这可能是因为托管PInvoke签名与非托管目标签名不匹配。”我使用非托管库如下:[StructLayout(LayoutKind.Sequential)]publicclassDGNElemCore{publicintoffset;publicintsize;publicintelement_id;publicintstype;publicintlevel;publicinttype;publicintcomplex

c# - 当托管在 VSTO/Outlook 加载项中的 ElementHost 中时,WPF 文本框不允许撤消

我有一个Outlook插件(VSTO),在Outlook窗体区域我有一个ElementHost中的WPF用户控件。我有一个问题,我的用户控件中的文本框没有撤消功能......在某些配置中。特别是在Windows7/Outlook2007中,撤消(即Ctrl-Z)不起作用,即使剪切/复制等都可以。有趣的是,Windows8/Outlook2010撤消确实有效。TextBoxXAML是:注意:我已尝试设置以下属性以使其工作但无济于事:IsUndoEnabled="True"UndoLimit="-1"谁能告诉我为什么会这样,我可以做些什么来让它按预期工作?2014年1月7日更新。我已将以下

c# - 什么是托管模块(与程序集相比)?

.NET中的托管模块是什么?它与程序集有何不同?PE文件(例如test.dll)是托管模块还是程序集?汇编/托管模块如何对应磁盘上的物理文件? 最佳答案 Managedmodule一般理解为只包含IL代码,没有直接机器码的模块。模块位于普通PE文件中。程序集是一组1个或多个模块,其中一个指定为“头”(将查找确切的术语[1])。尽管模块本身并没有多大用处-程序集是原子单元。例如,您可以拥有一个包含2个DLL和一个EXE的多模块程序集。不过,多模块组件非常少见。DonBox的书Esssential.NET,theRichterCLRvi