【软件编译】vs2013下编译notepad++源码

https://blog.51cto.com/12756634/1955628

1 下载notepad++源码

    登录notepad++官网https://notepad-plus-plus.org/

wKioL1mNqRHTIDDSAACs1SZoP7A585.png

2 对scintilla进行编译,获得SciLexer.dll文件
    具体编译方法请自行谷歌,本人赶时间,直接从已安装的notepad++中复制了一份。

 

    problem 1:如果没有这个文件会在一开始报错

        wKiom1mNq7LRtkWrAAAsoH_N3lY526.png

    problem 2:如果这个文件是自己编译获得的,则这个文件没有签名,也会报错。

wKioL1mNuiiD-posAAAVvy3D0_Y456.png

        solution 2-1:只需要将验证签名的函数去掉或强行通过验证就可以了。(通过在整个解决方案中搜索“Authenticode check failed”定位到签名验证部分的代码)

wKiom1mNvAfQQvmqAAAmz_sqT_A177.png

        solution 2-2:像我一样直接copy一个正版的过来

        maybe  solution 2-3:给自己的scilexer.dll加上签名证书,这个只是我的想法,没有进行验证

3 编译notepad++源码
   3.1  打开PowerEditor\visual.net,使用vs2013打开notepadPlus.vcxproj(notepadPlus.vs2015.vcxproj是vs2015的工程)

   3.2  修改工程属性,“将警告视为错误”改为“否”。否则编译时会出错。

wKioL1mNrz7C5jBMAAAcDEiiAFM372.png

   3.3  解决方案环境需要配置为与scilexer.dll一致,否在在使用loadlibrary加载时会出现193号错误
(因为loadlibrary返回NULL,只知道是加载失败,但不知道是为什么,后来使用getlasterror后获得错误号193;在网上一查,193说明不是合法的win32程序,因此才想到我用的dll是x64的,修改了环境就可以成功加载了)。

    错误提示如下:

wKiom1mNuo7TwLCuAAASnhdMVgE156.png

    解决方案配置:(因为这个问题消耗了大半天的时间。。。)

wKiom1mNvHXhQwzQAAAxFS-4bqw192.png

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值