问题标签 [late-binding]

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.

0 投票
2 回答
949 浏览

c - C中的后期绑定

c语言如何实现后期绑定?任何人都可以提供一个例子。

我认为可以使用 dlopen 和 dlsym 来实现,但我不确定。如果我错了,请纠正我!

0 投票
6 回答
8542 浏览

.net - VB.NET:不可能在 System.Object 实例上使用扩展方法

我可以为System.Object(所有)的所有子类创建一个扩展方法吗?

例子:

上述函数不适用于对象实例:

编译器不接受,是我电脑的问题吗?:)

更新问题似乎只发生在VB中,其中对象的成员通过反射(后期绑定
) 查找。

回答后更新
仅供参考,因为 vb 具有 C# 缺乏的优势,即导入模块的成员被导入到全局范围,因此您仍然可以在没有包装器的情况下使用此函数:

0 投票
2 回答
1368 浏览

vb.net - 后期绑定对象/属性名称的 WebBrowser 问题

使用与对象/属性名称生成相关的 WebBrowser 后期绑定调用存在问题。

例如:

将因多个 WebBrowser 控件实例而失败

实际发生的是mycontrol对象变为Mycontrol并且编译的 vb.net 应用程序将失败并出现错误

未找到成员。(来自 HRESULT 的异常:0x80020003 (DISP_E_MEMBERNOTFOUND))在 Microsoft.VisualBasic.CompilerServices.LateBinding.LateGet(Object o, Type objType, String name, Object[] args, String[] paramnames, Boolean[] CopyBack) 在 Microsoft.VisualBasic。 CompilerServices.NewLateBinding.LateGet(Object Instance, Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, Type[] TypeArguments, Boolean[] CopyBack) 在 C:\Projects\WebBrowser\SampleCall.vb 中的 Execute() :第 16 行

这个问题有什么解决方案吗?

相同的代码将适用于具有多个 WebBrowser 控件的 vb6 应用程序

编辑:此代码编译为:Option Strict Off

0 投票
1 回答
4323 浏览

delphi - Delphi CreateOleObject 事件

有一个代码:

此 COM 对象具有事件(例如 OnClick)。我应该如何在不导入 TLB 的情况下连接到这些事件?

0 投票
2 回答
654 浏览

dynamic - 如何动态/后期访问属性?

我想实现一种方法,该方法允许我以后期绑定/动态方式访问未知/匿名对象(-graph)的属性(我什至不知道如何正确调用它)。

这是我想要实现的示例:

这是一个使用“经典”反射的简单实现:

使用 C# / .NET 4 我还有哪些其他选项可以实现与上面所示类似的东西,但可能更简单、性能更高等?

也许有办法实现同样的事情,这将允许我指定expression使用 lambda 表达式而不是字符串?表达式树会以任何方式有帮助吗(例如,如this question所示)?

更新:对象和表达式通过 Web 服务调用传递到我的代码中。这就是为什么我在我的方法中使用object和。stringGet()

0 投票
3 回答
393 浏览

c# - 如何在我的程序中使用 .NET 类型字符串?

例如,在 .NET app.config 中,您可能会得到

类型部分中的签名似乎在各种 .NET 地方都已标准化,但我不知道如何在我自己的程序中执行此操作。我System.Activator在我的程序中使用过,但感觉就像我在复制 .NET 已经完成的工作。

在编程方面,我该怎么做:

0 投票
1 回答
8388 浏览

oop - 后期绑定与多态性 - 有什么区别?

我见过两者可以互换使用,但它们真的意思相同吗?根据我的理解,多态扩展了您可以通过子类的实例交换类的实例的事实,而后期绑定意味着当您调用实例的方法时,类型决定调用哪个方法(子类/超类) .

0 投票
2 回答
538 浏览

c# - .NET 4.0 后期绑定:确保程序集真实性?

我必须开发一个支持插件的 .NET C# 应用程序。我在网上查了很多资料,好像没那么难。

我只有一个规范,模块的程序集必须在程序集级别上进行验证。当后期绑定发生并加载程序集时,宿主应用程序必须绝对确定:

  1. 大会没有改变。
  2. 该组件确实是由该公司提供的。

我读到可以使用密钥对程序集进行签名,但据我所知,这只能证明程序集没有更改。

必须做什么才能确定大会的真实性?

任何帮助将不胜感激。

0 投票
4 回答
386 浏览

java - 关于后期绑定,这是真的吗?

我在“Polymorphism”一章的“Thinking in java”中读到了“后期绑定”的概念,我只是想知道我对这个概念的理解是否正确

例如,过程语言知道在运行时之前要执行的函数在哪里

所以每个可能的函数的地址在程序运行之前是准确地知道的,所以它很容易编译,但是在 OOLs 中检查这个代码,,

虽然 a 可能是 dog 、 cat 或任何其他 Animal 类型,并且因为我们在运行时初始化对象,所以我们必须在运行时传递我们运行 speak 的参数,所以这是在运行时发生的后期绑定-时间 ....

真的吗 ??

0 投票
2 回答
1238 浏览

c# - 在 C# 中释放后期绑定对象

有没有办法释放使用后期绑定(即由Activator.CreateInstance()方法创建)访问的对象?

我有一个将文件从一种格式转换为另一种格式的应用程序。执行这些翻译的程序集位于我的应用程序目录中的一个文件夹中。

当应用程序第一次启动时,我可以从翻译文件夹中删除这些程序集而不会出现任何错误。但是,一旦我通过应用程序处理文档(并已使用后期绑定绑定到其中一个翻译程序集),我就不能再删除翻译程序集了。此时,我收到一条错误消息,指出该文件“正在被另一个应用程序使用”。

一旦我完成使用它,有没有办法“释放”我的应用程序中的后期绑定对象?