dll文件打开软件 电脑dll文件打开方式

先决条件本文是C++开发的高级方向。想学习DLL和插件架构,对PS操作有想法的朋友,适合深入阅读本文。普通编程爱好者可以加深对程序入口形式的理解。感谢您的关注。1.开发前的准备:先去Adobe官网下载相应的开发包,我是本地安装的,所以安装了这个相应的版本。http://***.adob...

先决条件

本文是C++开发的高级方向。想学习DLL和插件架构,对PS操作有想法的朋友,适合深入阅读本文。普通编程爱好者可以加深对程序入口形式的理解。感谢您的关注。

1.开发前的准备:

先去Adobe官网下载相应的开发包,我是本地安装的,所以安装了这个相应的版本。

http://***.adobe.com/devnet/photoshop/sdk.html
这里我选择Windows平台。

2.文件解压缩的详细说明:

下载zip,你可以随意解压到你的本地目录,然后里面有一个pluginsdk插件sdk目录。您可以看到其中有3个子文件夹:


文档:英文帮助文档;[/br
photoshopapi:API: API库,用来开发要调用的库;
samplecode:示例程序。其中的例子可以作为开发的模板进行修改或参考。

3.打开samplecode,可以看到各种分类文件夹,对应不同的插件功能。

输出文件夹用作编译后的输出目录。首先,您需要学习两个插件:getter和listener,它们位于samplecodeauto***tion目录中。

4.getter插件

打开samplecodeauto***tiongetterwinger . SLN,编译生成插件,放入PS插件目录中试用(也可以将Output中的插件目录设置为PS的插件目录),运行PS->: File->: Auto***tic->: Getter,这时你会发现桌面上有一个getter.log。这个插件的主要作用是将你当前在PS中打开的文件、图层信息和函数调用方法输出到日志中,这样当你不知道如何获取一些信息时,就在getter.log中查找相应的函数。

5.**器插件:

这个插件的作用是监控PS中大多数操作和事件的函数调用过程,并输出到桌面上的listerner.log。比如你想***剪切某个图层,不知道怎么用函数实现,先用**器插件,打开PS***剪切一次图层,然后打开listener.log,代码就有了。

6.其他插件

你可以根据英文名大致理解它的意思。

7、外挂式

Photoshop支持以下四种插件:
在Windows中,插件文件必须放在特定的路径中(如photoshopplugins)。
Acquire modules(扩展名8ba)用于在新窗口中打开图像。常用于扫描仪或视频采集卡接口,读取压缩格式或系统不支持的文件,通过acquire子菜单调用。
导出模块(扩展名. 8be)实现图像输出。常用于控制特殊打印机或输出非标准压缩格式的文件,通过导出子菜单调用。
For***t modules(扩展名. 8bi)实现了标准读写系统不支持的特殊文件格式,出现在Open & # 8230、另存为…等等。在对话框的格式栏中。
滤镜模块(扩展名. 8bf)用于修改和润色当前图像中的选定区域。这是最熟悉的部分,很多图像效果都来自这些模块,通过滤镜菜单调用。

8.框架:

每个插件都有一个AutoPluginMain,就是DLL入口。所谓的插件,其实就是一个DLL。找几个插件,在AutoPluginMain中添加一个断点。保持跟踪,看看这些插件做了什么。
有些插件带有弹出界面,可以使用浏览器进行编辑。使用DialogBoxParam创建自定义界面。参考listener中的DoUI函数,***kenew中的DoAbout等。
几乎所有的API函数都会返回一个SPErr,表示函数调用是否正确。
所有操作都必须有一个PIActionDescriptor,可以创建(spaction descriptor-->;Make())或get (PIUGetInfo())。SptionDescriptor是一个接口指针,从中可以获取sPSActionDescriptor信息(以下简称desc)并执行一些操作。
sPSActionReference是一个接口指针,用于将一些信息封装到desc中,(以下简称refer)。
sPSActionControl是用于播放各种事件的接口指针。
如果想获取信息,可以使用PIUGetInfo系列函数(在PIUGet.h中定义)。

9.插件叠化示例:

这是一个来自SDK的插件融合示例。
DLLExport MAC Pascal void plugin ***in(const int 16 selector,
FilterRecordPtr filterRecord,
intptr_t * data,
int 16 * result)
{
gFilterRecord = filter record;
gdata handle = data;
gResult = result;

if(selector = = filterSelectorAbout)
{
ssp basic =((about record *)gFilterRecord)->sSPBasic
}
else
{
ssp basic = gFilterRecord->sSPBasic

if(gFilterRecord->bigDocumentData!= NULL)
gFilterRecord->bigDocumentData->plugin us 32 bit coordinates = true;
}

switch(选择器)
{
case filter selectorabout:
do about();
break;
事例筛选器selector parameters:
do parameters();
break;
case filterSelectorPrepare:
do prepare();
break;
case filter selectorstart:
do start();
break;
case filter selectorcontinue:
DoContinue();
break;
case filter selectorfinish:
do finish();
break;
默认:
break;
}
if(选择器!= filterSelectorAbout)
unlock handles();
}
这里展示了部分代码,插件使用如下:

找到解压后的文件,我这里用VS2010打开Dissolve.sln文件,并运行


操作结束:


虽然文件已成功生成,但您可能会遇到找不到生成的文件的问题。这个问题当时就出现了,不过不用担心。生成的原因。dll文件找不到是因为插件本身有固定的扩展名。当您打开项目属性页时,您可以看到输出文件的扩展名是. 8bf,因此问题解决了。在路径中找到uninstall.8bf文件,将其***到Photoshop安装目录中的插件文件格式文件夹,然后重新启动Photoshop。你会发现Photoshop增加了插件卸载,可以愉快的使用了。这只是一个例子,还有很多其他的PS插件等着你用。

w

本文来自不茫然未来投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/582472.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 06-08
下一篇 06-08

相关推荐

  • opt文件用什么打开 opt无效文件规格ug

    Linux软件安装目录Linux的软件安装目录很精致。了解这一点有利于系统管理。/usr:系统级目录,可以理解为C:/Windows/,/usr/lib可以理解为C:/Windows/System32。/usr/local:用户级程序目录,可以理解为C:/programfiles/。默认情况下,用户编译的软件将安装在该目录中。/opt:用

    2023-07-29 03:36:01
    755 0
  • 安卓手机如何打开.gpk文件?(安卓手机如何打开easm文件)

    01Gpk在Android定位器上无法直接打开,我们就把gbk后缀改成zip后缀,解压,把数据包放在定位器相应的位置,然后安装apk文件。Android版gbk游戏文件是针对apk安装程序和游戏包进行打包、压缩和后缀更改的。如果下载了gpk游戏,就不能直接安装了。以下是如何为Android安装GPK文

    2023-07-28 14:21:01
    462 0
  • 文件怎么改后缀名 文件后缀名的图文操作流程

    大家好,我是老盖。首先感谢您看完这篇文章。本文有视频。视频比较详细,也可以看我贴的视频。当我们完成安装计算机系统时,默认情况下,文件类型扩展名不显示。我在桌面上创建了一个新的文本文档。txt不显示在其文件名之后。如果我们想显示文件类型的扩展名,我们需要设置它

    2023-07-28 03:17:01
    847 0
  • 加密文件怎么解密 迅雷压缩文件加密了怎么办

    在网上有一句盛传的话叫“发图不发种,菊花XXX”,但是如果有了种子下下来是个压缩包,而且还有密码,恐怕就更“日了DOG了”。不过现在迅雷的一个功能却能有效解决这个问题。在迅雷的新版本中,有一个功能叫做“查看解压密码”。当我们下载的压缩包文件被加密后,我们会看到下

    2023-07-28 02:15:01
    551 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信