1.1 IVF编译器9.0 Windows版 1
1.1.1 标准版与专业版 1
第1章 IVF编译器及CVF向IVF的转换 1
1.1.2 优化及其他功能 2
1.1.3 兼容性 6
1.2 IVF 9.0的安装 7
1.2.1 系统要求 7
1.2.2 安装支持软件 9
1.2.3 安装IVF 9.0 9
1.3.1 IVF与CVF的兼容性 13
1.2.4 示例开发环境 13
1.3 CVF转换到IVF 13
1.3.2 移植CVF工程 14
1.3.3 IVF引入的变化 16
小结 19
第2章 .NET开发Fortran应用程序 21
2.1 设置.NET开发环境 21
2.1.1 编译器版本 21
2.1.2 搜索目录 21
2.1.3 自定义源文件扩展名 22
2.2 Fortran应用程序类型 23
2.2.1 控制台应用程序 24
2.2.2 标准图形应用程序 24
2.2.3 QuickWin应用程序 26
2.2.4 Windows应用程序 27
2.2.5 静态链接库 28
2.2.6 动态链接库 29
2.3 创建工程 31
2.3.1 添加文件 32
2.3.2 选择配置 32
2.3.3 设置工程 33
2.3.4 生成可执行文件 34
2.3.5 宏指令 35
小结 37
第3章 QuickWin绘图和输出文本 38
3.1 操作子窗口 38
3.1.1 创建子窗口 38
3.1.2 焦点窗口与活动窗口 40
3.1.3 设置子窗口属性 41
3.1.4 控制窗口大小和位置 43
3.1.5 保持子窗口显示 44
3.2.1 控制光标显示 46
3.2 设置图形输出选项 46
3.2.2 设置绘图坐标系 47
3.2.3 设置颜色 50
3.2.4 设置图形属性 51
3.3 输出图形和文本 56
3.3.1 绘制图形 56
3.3.2 输出字符文本 57
3.3.3 输出字体文本 60
小结 74
4.1.1 设置初始菜单 75
4.1 菜单操作 75
第4章 QuickWin界面定制 75
4.1.2 删除、插入和追加菜单 78
4.1.3 修改菜单 83
4.1.4 调整子窗口列表的菜单位置 85
4.1.5 模拟鼠标选取菜单项的操作 86
4.2 本地化 87
4.3 信息提示 89
4.3.1 使用信息对话框 89
4.3.2 定制About对话框 91
4.4.1 定制图标 93
4.4 图标和标题 93
4.4.2 定制标题 94
4.5 鼠标输入 99
4.5.1 事件方法 100
4.5.2 阻塞方法 103
小结 105
第5章 使用对话框和控件 106
5.1 设计对话框 106
5.1.1 插入对话框资源 107
5.1.2 布置对话框 108
5.1.3 设置对话框及其控件属性 109
5.1.4 保存对话框资源 111
5.2 编写对话框程序 113
5.2.1 引用对话框资源 113
5.2.2 操作对话框及其控件 114
5.2.3 编写控件回调例程 116
5.2.4 控制对话框的退出 120
5.3 使用控件 121
5.3.1 控件索引 121
5.3.2 使用控件 125
小结 144
第6章 设计Windows应用程序 145
6.1 Windows应用程序的结构 145
6.1.1 主函数 145
6.1.2 窗口函数 149
6.1.3 Windows系统、主函数、窗口函数之间的关系 150
6.1.4 Fortran Windows程序的结构 153
6.2 无模式对话框应用程序 154
6.3 SDI和MDI Windows程序 166
6.3.1 SDI和MDI界面 166
6.3.2 使用无模式对话框 168
6.3.3 使用菜单 177
6.3.4 绘制图形 184
小结 188
第7章 使用COM组件 189
7.1 相关的COM技术 189
7.1.1 组件对象模型(COM) 189
7.1.2 自动化 200
7.1.3 ActiveX控件 201
7.2 Intel Fortran模块向导 201
7.3 使用自动化服务器 203
7.4 使用Activex控件 213
小结 224
第8章 创建多线程应用程序 226
8.1 进程、线程及其优先级 226
8.1.1 进程、线程的基本概念 226
8.1.2 进程和线程的优先级 226
8.2 线程操作 228
8.2.1 线程的创建 228
8.2.2 线程的终止 228
8.2.3 线程的挂起和恢复 229
8.3 线程同步 235
8.3.1 临界段 235
8.3.2 互斥体 236
8.3.3 信号计数器 237
8.3.4 事件对象 237
8.4 线程局部存储(TLS) 238
8.5 进程操作 238
8.6 多线程操作的相关例程 253
小结 255
9.1 动态链接库概述 256
9.1.1 动态链接库的基本概念 256
第9章 创建和使用动态链接库 256
9.1.2 动态链接库的组成 257
9.2 动态链接库的创建 259
9.2.1 导出声明 259
9.2.2 共享DLL中的例程 260
9.2.3 共享DLL中的数据 264
9.2.4 跨进程共享DLL中的共用区数据 267
9.2.5 共享DLL中的对话框资源 271
9.3.2 显式链接 289
9.3.1 隐式链接 289
9.3 动态链接库的使用 289
小结 293
第10章 Intel Fortran与Visual C++/Basic.NET的混合编程 295
10.1 混合编程概述 295
10.1.1 混合编程的优势 295
10.1.2 混合编程的前提条件 296
10.1.3 调用约定 296
10.1.4 .NET下的混合编程实现方式 297
10.2 协调调用约定 298
10.2.1 属性编译指令和调用约定 298
10.2.2 堆栈清理及可选参数传递 300
10.2.3 匹配Intel Fortran与C/C++的调用约定 303
10.3 协调命名约定 304
10.3.1 Intel Fortran和C/C++的命名约定 305
10.3.2 协调目标实体名的大、小写 306
10.3.3 Intel Fortran模块命名规则 308
10.4 传递数据 309
10.4.1 例程参数 309
10.4.2 模块 310
10.4.3 外部变量 314
10.5 匹配数据类型 319
10.5.1 数值型、复数型及逻辑型 320
10.5.2 字符串 322
10.5.3 指针 330
10.5.4 数组 333
10.5.5 派生类型 338
10.6 Intel Fortran/Visual C++.NET的编译和链接 341
10.6.1 运行库的一致性 341
10.6.2 项目依赖项 343
10.6.3 Intel Fortran支持库 344
小结 347
参考文献 349