delphi导入具有指定入口点的dll函数

发布于 2024-10-21 21:39:54 字数 283 浏览 1 评论 0原文

我如何在Delphi中定义这个函数?我只知道导入没有入口点,找不到任何有用的例子:(

这是用C#编写的,

[DllImport("dwmapi.dll", EntryPoint = "#131")]
static extern int DwmpSetColorizationParameters(ref DwmColorParams dcpParams, 
bool alwaysTrue);

非常感谢,

最诚挚的问候

How can I define this function in Delphi ? I know imports only without entry point and can't find any usefull example :(

That's written in C#

[DllImport("dwmapi.dll", EntryPoint = "#131")]
static extern int DwmpSetColorizationParameters(ref DwmColorParams dcpParams, 
bool alwaysTrue);

Thanks a lot

Best regards

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清风无影 2024-10-28 21:39:54

这应该可以,尽管我不确定 alwaysTrueconst

function DwmpSetColorizationParameters(var dcpParams: TDwmColorParams; 
  alwaysTrue: BOOL): Integer; stdcall; 
  external 'dwmapi.dll' index 131;

This should do, although I'm not sure about the const for alwaysTrue.

function DwmpSetColorizationParameters(var dcpParams: TDwmColorParams; 
  alwaysTrue: BOOL): Integer; stdcall; 
  external 'dwmapi.dll' index 131;
夕嗳→ 2024-10-28 21:39:54

EntryPoint 字段允许使用 DLL 用于导出它的名称以外的名称来声明该函数。如果该值的第一个字符是#,那么它表示函数的序数值,而不是它的 DLL 名称。

Delphi 使用两个不同的子句。如果 DLL 使用的名称与代码中的名称不同,则可以使用 name 子句:

procedure Foo(...); external DLL name 'Bar';

但如果 DLL 根本不导出任何名称,则可以使用 index 子句来告诉函数具有哪个序数值:

procedure Foo(...); external DLL index 131;

The EntryPoint field allows the function to be declared with a name other than what the DLL used to export it. If the first character of the value is #, then it indicates the ordinal value of the function instead of the DLL's name for it.

Delphi uses two different clauses. If the DLL uses a name different from the one in your code, then you can use a name clause:

procedure Foo(...); external DLL name 'Bar';

But if the DLL doesn't export any name at all, then you can use an index clause to tell which ordinal value the function has:

procedure Foo(...); external DLL index 131;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文