论坛风格切换切换到宽版
  • 8221阅读
  • 14回复

请问系统地学习 Inno Setup 的安装脚本,应该看哪方面的书或教程? [复制链接]

上一主题 下一主题
离线4231252
 

发帖
23
金钱
230
威望
23
只看楼主 倒序阅读 0 发表于: 2012-10-07
— 本帖被 gnatix 执行置顶操作(2013-03-20) —
     能否请问一下,我想系统地学习 Inno Setup 的安装脚本,应该看哪方面的书或教程?

刚接触 Inno Setup 不久,被它强大的功能所吸引,但我没有任何编程的基础,现在刚开始学C++。
用 Inno 的时候基本上只能照搬别人的代码,连模仿都错误频出,经常出现未声明的标识符或者代码顺序弄错的低级错误。
我想从原理上学习 Inno Setup 的脚本语言,这样就不会老停留在照抄和模仿的阶段了。

我也在网上找了很久,找到了许多关于 Inno Setup 的相对很详细的教程,例如怎样添加按钮等控件、自定义页面等事件之类的。但是问题在于我完全没有编程方面的基础,无法将这些有机地组合起来从而达到自己想要的效果。

都说 Inno 的脚本是源于 Pascal 语言,我又从此处着手,但貌似关于 Pascal 的书很少,相对 C/C++方面而言简直少得可怜。Pascal 好像版本众多,而且好像关于 Pascal 的书和教程都是讲的 Delphi 什么的,不知道和 Inno Setup 的脚本有没有关系。
况且听说 Inno Setup 的脚本和 Pascal 语言还不完全一样。这样一来我就完全不明白到底怎样学习 Inno 的脚本了。

作为一个新手,在此发帖求教,希望高手们能告诉我学习 Inno Setup 的安装脚本应该从哪方面着手,有没有相关的书或者教程?
我指的是从最基础的学起,因为我没有基础,现在看别人的代码都只能够看懂一些片段。

离线4231252

发帖
23
金钱
230
威望
23
只看该作者 1 发表于: 2012-10-10
没有人来帮帮新手吗?

老虎版主,阿信版主,请指点一二啊

[@]gnatix[/@]


[@]restools[/@]
离线19880313

发帖
80
金钱
740
威望
74
只看该作者 2 发表于: 2012-10-10
Inno对比其他封装工具来说其实不难的,只要多看几次实例,脚本看着也很明白(至少比NSIS好理解)。定制方面就仁者见仁。还有你这样的召唤不成功。
离线gnatix

发帖
7696
金钱
-8279
威望
-828
只看该作者 3 发表于: 2012-10-11
从学习 Object Pascal 开始吧。
Delphi 是基于 Pascal 的,所以学习 Delphi 也可以。
注意: Inno Setup 的 Object Pascal 是缩减了的,所以它不一定能够运行从其它地方拿来的代码。
离线4231252

发帖
23
金钱
230
威望
23
只看该作者 4 发表于: 2012-10-11
回 3楼(gnatix) 的帖子
gnatix:从学习 Object Pascal 开始吧。Delphi 是基于 Pascal 的,所以学习 Delphi 也可以。注意: Inno Setup 的 Object Pascal 是缩减了的,所以它不一定能够运行从其它地方拿来的代码。 (2012-10-11 03:52) 

非常感谢老虎版主和其他好心人的指点,

我在网上找到了Object Pascal 中文参考手册 和 essential pascal

再结合论坛里找到的 inno 的现成脚本学习先
离线restools

发帖
2848
金钱
1430
威望
143
只看该作者 5 发表于: 2012-10-11
其实不用系统的看 Delphi 的书, 因为那样涉及的面太广了.
一般如果想尽快概览 Inno Setup 代码段的语法, 可以看以下网页.
http://www.marcocantu.com/epascal/chinese/default.htm
作者由很早以前就是写 Delphi 的书的, 他的"Delphi 从入门到精通"非常出名, 也是我的启蒙书籍. 以至于后来国内的书籍都喜欢用"Delphi 从入门到精通"来鱼目混珠.
上面说到的网页只涉及到了一些基本的语法内容. 对于 Inno Setup 用户来说, 看到第7章就可以了.
-------------------------------
第一章: Pascal历史回顾
第二章: 编写Pascal代码
第三章: 类型、变量及常量
第四章: 用户自定义数据类型
第五章: 语句
第六章: 过程与函数
第七章: 字符串操作
--------------------------------
然后就可以找InnoSetup 的例子代码来看了. 看起来就觉得很简单了. 主要了解了语法后就能看懂例子中的逻辑关系.
我的BLOG:   http://restools.hanzify.org (Inno Setup 增强版, 插件 发布站点)
离线restools

发帖
2848
金钱
1430
威望
143
只看该作者 6 发表于: 2012-10-11
Inno Setup 的语法会比 Pascal 的语法要精简, 包括一些运算符号, 你挑你见过的来看就可以了, 然后了解它的意思, 心里记下来, 未见过的暂时可以自认为 Inno Setup 里面是没有的和不支持的. 以后看见了再去翻查.
我的BLOG:   http://restools.hanzify.org (Inno Setup 增强版, 插件 发布站点)
离线restools

发帖
2848
金钱
1430
威望
143
只看该作者 7 发表于: 2012-10-11
然后就是可视化的控件方面的内容了, 这就是我做可视化编辑器的原因, 可视化基本上就是所见即所得, 所有属性可以立刻修改和见到效果, 并且自动生成代码, 那样你就可以作为参考了, 很容易了解可视化对象的代码如何写的. 再拼凑上面的语法逻辑就能形成各种各样的代码效果. 关于控件属性的功能, 因为为多数是沿用 Delphi 的控件, 所以其属性, 你可以在网上搜索到一大堆相关的解释. 例如想知道 Font.Color 是什么意思和怎么操作. 你可以上网搜索 delphi font.color ,你就很容易找到题为怎么修改字体颜色的内容. 也会得到相关的代码, 直接套用. 又或者搜索 Delpi 怎么修改字体颜色, 也会找到相关代码.
我的BLOG:   http://restools.hanzify.org (Inno Setup 增强版, 插件 发布站点)
离线4231252

发帖
23
金钱
230
威望
23
只看该作者 8 发表于: 2012-10-22
回 7楼(restools) 的帖子
restools:然后就是可视化的控件方面的内容了, 这就是我做可视化编辑器的原因, 可视化基本上就是所见即所得, 所有属性可以立刻修改和见到效果, 并且自动生成代码, 那样你就可以作为参考了, 很容易了解 .. (2012-10-11 23:02) 

多谢阿信斑竹的热心指点,,我找到了 epascal 的中文翻译教程,看了前七章。

还找到了一些 Inno Setup 的常用过程和函数的教程。

仔细学了一段时间,按照教程操作实验了不少,关于添加各种控件的代码基本上算是都会了。

再次感谢阿信大哥的回复。
离线4231252

发帖
23
金钱
230
威望
23
只看该作者 9 发表于: 2012-10-22
回 7楼(restools) 的帖子
restools:然后就是可视化的控件方面的内容了, 这就是我做可视化编辑器的原因, 可视化基本上就是所见即所得, 所有属性可以立刻修改和见到效果, 并且自动生成代码, 那样你就可以作为参考了, 很容易了解 .. (2012-10-11 23:02) 


我还想再问一问,劳烦阿信大哥讲讲。

那些教程上讲的添加自定义页面、编辑框、按钮等事件只是把原来预设页面的功能用代码写出来了。

Inno Setup 调用插件的动态链接库是怎么实现的??