(译)win32asm实例-5

MySQL下载安装详解   因为MySQL数据库是免费的,所以我讲一下正常的安装过程。   1.进入MySQL的官网 https://www.mysql.com/  能够看到下面的页面:     2.点击进入DOWNLOADS,你会看到有三个版本的MySQL,最前面的两个分别是企业版,和集群版CGE(商业),而这两个是需要收费的,我要下载的是社区版,也就是第三个。    3.点击 Community... 阅读详情
 
5.0 - Adding a menu添加菜单

Our program should have a menu to set some options. Firstly we need to create our menu in the resource file:

我们的程序应该有一个菜单来设置一些选项。首先,我们需要在资源文件中创建我们的菜单。

5.1 - Creating a menu创建菜单

A menu is fairly easy to make in your resource file. If you take a look at the resource text below you will see it's self explaining. Popup menus are menus that have submenus, a menuitem is just a menuitem with an associated ID. These IDs will be defined and can be used in your program to find out which menu item the user clicked on. Finally, the ampersands (&) will underline the character the precede, indicating a shortkey can be used.

在你的资源文件中,很容易就可以创建一个菜单。如果你看一看下面的资源文本,你会看到它是其意自明的。Popup(弹出)菜单是有子菜单的菜单,一个菜单项仅是一个有关联ID的菜单项。这些ID将被定义而且可以被用于你的程序来找出用户点击的是哪个菜单项。最后,&号会下划线首字母,表示它可以使用快捷键。

Add this below the ICON definitions:

添加下面的ICON 定义:

MAINMENU    MENU DISCARDABLE
BEGIN
    POPUP   "&File"
    BEGIN
        MENUITEM "&New Game", MI_NEWGAME
        MENUITEM "&Open Bitmap ", MI_OPENBITMAP
        POPUP "&Difficulty"
        BEGIN
            MENUITEM "&Easy", MI_EASY
            MENUITEM "&Medium", MI_MEDIUM
            MENUITEM "&Hard", MI_HARD
        END
    END
    POPUP "&Picture"
    BEGIN
        MENUITEM "Use &standard picture", MI_USESTANDARD
        MENUITEM "Use &numbers", MI_USENUMBERS
        MENUITEM "Use &bitmap file", MI_USEFILE
    END
    POPUP "&Colors"
    BEGIN
        MENUITEM "&Blue color scheme", MI_COLORBLUE
        MENUITEM "&Red color scheme", MI_COLORRED
        MENUITEM "&Green color scheme", MI_COLORGREEN
        MENUITEM "&Ugly color scheme", MI_COLORUGLY
    END
    POPUP "&Help"
    BEGIN
        MENUITEM "&About", MI_ABOUT
    END
END

Add this below the icon defines (before the code above!):

添加下面的菜单项定义(在前面的代码前!)

#define         MAINMENU            301

#define         MI_NEWGAME          101
#define         MI_OPENBITMAP       102
#define         MI_EASY             103
#define         MI_MEDIUM           104
#define         MI_HARD             105
#define         MI_USESTANDARD      106
#define         MI_USENUMBERS       107
#define         MI_USEFILE          108
#define         MI_COLORBLUE        109
#define         MI_COLORRED         110
#define         MI_COLORGREEN       111
#define         MI_COLORUGLY        112
#define         MI_ABOUT            113

5.2 - Defining the Ids定义ID

Now you'll have to convert the C definitions to asm equates:

现在我们必须把C定义翻译为asm

MAINMENU        equ 301

MI_NEWGAME      equ 101
MI_OPENBITMAP   equ 102
MI_EASY         equ 103
MI_MEDIUM       equ 104
MI_HARD         equ 105
MI_USESTANDARD  equ 106
MI_USENUMBERS   equ 107
MI_USEFILE      equ 108
MI_COLORBLUE    equ 109
MI_COLORRED     equ 110
MI_COLORGREEN   equ 111
MI_COLORUGLY    equ 112
MI_ABOUT        equ 113

When you've converted them, place them in mosaic.inc.

在你翻译完它们后,把它们放入mosaic.inc中。

The resource file and mosaic inc should now look like this: res1.zip

资源和mosaic.inc文件应该和这个一样:res1.zip

5.3 - Adding the menu to your window把菜单加入你的窗口


[in your .data? section]

[在你的.data?部分]
hMenu           dd      ?

[in your .code section]

[在你的.code部分]
    ......
    invoke  RegisterClassEx, addr wc      ;AFTER THIS LINE!
    invoke  LoadMenu, hInstance, MAINMENU ;load menu
    mov     hMenu, eax                    ;store handle
    INVOKE  CreateWindowEx,NULL,ADDR ClassName,ADDR AppName,/
            WS_OVERLAPPEDWINDOW-WS_MAXIMIZEBOX-WS_SIZEBOX,/
            CW_USEDEFAULT, CW_USEDEFAULT,258,350,NULL,hMenu,/ ;!!!!
            hInst,NULL
            ;NOTE: notice addition of the hMenu parameter
            ;      in the CreateWindowEx call.
    ......

The hMenu is added to the uninitialized data section to hold the menu handle when it's loaded. LoadMenu will load a menu resource from the instance hInstance (mosaic.exe) with a certain ID (MAINMENU). The handle is stored with 'mov hMenu, eax', then the handle is passed to CreateWindowEx to create a window with a menu. After you have run make.bat you should have a main window with a menu (that does nothing):

HMenu被加入未初始化data部分来在菜单载入后保存菜单句柄。LoadMenu会从实例hInstancemosaic.exe)中用某个IDMAINMENU)载入菜单。句柄用‘mov  hMenu, eax’保存,然后句柄传递给CreateWindowEx来创建一个有菜单的窗口。在你运行了make.bat之后,你应当有了一个带菜单的主窗口(它什么也不干):

   

   

 

Your source file should look like this now: mosaic.asm

现在你的资源文件应该是这样:mosaic.asm

MySql的下载与安装 这样就完成了在CentOS 7系统中MySQL 8.0的基本下载和安装流程。请注意,由于MySQL版本更新和策略变化,具体的安装命令和过程可能会有所变动,建议在安装时参照官方最新文档进行操作。请根据实际情况和实际安装界面提示操作,以上步骤可能会因MySQL发行版本的不同而有所差异。在安装过程中,请留意具体的提示信息,按照官方文档或安装向导的指引来完成安装和配置工作。: 添加MySQL官方的Yum源以便直接通过yum命令安装MySQL 8.0。: 首先,登录到您的CentOS 7服务器并打开终端。 阅读详情

相关推荐

Autowired的使用介绍

我们都知道在spring中@Autowired注解,是用来自动装配对象的。@Service@Autowired没错,这样是能够装配成功的,因为默认情况下spring是按照类型装配的,也就是我们所说的byType方式。此外,@Autowired注解的required。

白话机器学习 1312

Win32汇编之使用资源--菜单和加速键

///我们在使用软件时可以看到菜单、图标、版本信息等,它们是可执行文件的组成     部分也是Windows中的不同类型的资源。这些资源并不在源码的数据段中定义,     而是单独放在一个节区中,需要这些资源时必须借助API装入方可使用。/// 使用资源-菜单和加速菜单 创建资源脚本文件menu.rc 因为在resource.h文件中包括了资源的预定义值,所以将resource.h

程序之美 1130

c#源码,将矩阵(二维数组)渲染成云图,强度图,热力图,均匀性图,伪彩图

CSDN软件0积分下载链接:https://download.csdn.net/download/wanghuannihao1992/86656759。6、渲染效果良好,颜色均匀分布,不存在等高线,交叉点。3、纯粹的C#代码编写,不含第三方dll或者控件。4、支持ColorBar显示,强度值颜色坐标显示。2、渲染时间60ms左右,速度快,1、二维数据最小支持2*2,7、采样全新数据插值算法。先直接上C#软件效果图。5、整图保存为单个图片。

业余程序员小徐的博客 6844

mysql下载哪个_Mysql下载与版本选择

如果用到数据库,可能很多小伙伴需要下载Mysql,那么,如何去下载Mysql以及选择自己想要的版本呢?1.下载mysql要去的官网地址如下:更详细的介绍 :https://blog.csdn.net/cupid1102/article/details/502330932.进入官网后看到的大概如下:其中:1)MySQL Enterprise Edition:企业版本,需付费,可以试用30天。2)My...

weixin_39736650的博客 7869

MySQL下载和安装教程

MySQL下载和安装教程 下载MySQL数据库可以访问官方网站:https://www.mysql.com/ 点击DOWNLOADS模块下的Community模块,进行下载 或可访问网页:https://dev.mysql.com/downloads/mysql/直接下载MySQL社区服务版 进入,选择MySQL的版本及主机 目前最新版本是:MySQL Community Server 8.0.27,点击下载 点击后进入下一页面,该页面可注册MySQL账户,可登录MySQL账户,也可不进行注册,直接下

liver100day的博客 5万+

【MySQL】下载(超详细教程)

首先 ,我们一步一步跟着我的操作来,不能越步骤,很容易报错,就芭比Q了。 如果选第一种方式,很可能你的navicat等客户端连不上mysql8。所以这里一定要选第二个(下图红框的地方)

二两清酒.的博客 1万+

centos 下载哪个mysql_CentOS7中下载MySQL

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~CentOS 7中,yum默认安装的是Mariadb,但我想使用MySQL,于是自己下载~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~wget ftp://ftp.icm.edu.pl/...

weixin_42526353的博客 469

mysql 用哪个版本

我整理的一些关于【MySQL】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/yOSbkR如何确定使用哪个版本的 MySQL:一篇详尽的指南 在开发过程中,选择合适的数据库版本是非常重要的。今天,我们将详细介绍如何确定你应该使用哪个版本的 MySQL。这篇文章将为你提供一个清...

weixin_41087653的博客 173

MySQL与PostgreSQL比较,哪个更好、我们该选用哪个?

点击上方 "编程技术圈"关注,星标或置顶一起成长后台回复“大礼包”有惊喜礼包!每日英文Always remember two things: Don't make...

程序员小乐 1608

mysql for centos下载_CentOS下载mysql哪个版本

CentOS下载mysql哪个版本,采用了,多种,语言,自己的,数据库管理CentOS下载mysql哪个版本易采站长站,站长之家为您整理了CentOS下载mysql哪个版本的相关内容。CentOS下载mysql哪个版本Centos就是redhat的社区发行版,内核是一样的,选择与redhat对应版本即可。或者选择 linux-generic,后者这个是通用的。MySQL是一种开放源代码的关系型数据...

weixin_30359737的博客 1165

mysql官网和下载地方

官网:https://www.mysql.com/   下载内容地方:https://dev.mysql.com/downloads/

hqmln的博客 166

【MySQL篇】MySQL下载位置

MySQL下载位置 不懂你们第一次安装MySQL的时候,是不是在官网找了半天找不到社区版的下载地址…… —【suy999】 文章目录MySQL下载位置一、官网地址MySQL官网下载地址:https://www.mysql.com/downloads/二、MySQL社区版下载MySQL社区版下载地址:https://dev.mysql.com/downloads/(一)MySQL社区版下载(二)选择需要安装的类型1、选择“MySQL Community Server”2、选择“MySQL Installer

蘇小沐的电子数据取证博客 2567

MySQL安装下载教程

一、下载MySQL 首先,去数据库的官网http://www.mysql.com下载MySQL。 点击进入后的首页如下: ---点击DOWNLOADS,进入下载界面如下, ---再点击红色框内链接,后页面如下 ---点击选择MySQL Community Downloads社区版。进入如下页面 ----再点击go to download page,进入如下页面 ---点击第二个下载,进入如下页面,选择最下面的no ,thanks。跳过登录下载 二、安装MySQL...

test_leader的博客 5167

MySQL 与 PostgreSQL 比较,哪个更好、我们该选用哪个?

点击下方“民工哥技术之路”,选择“设为星标”回复“1024”获取独家整理的学习资料!问题如果打算为项目选择一款免费、开源的数据库,那么你可能会在MySQL与PostgreSQL之间犹豫不定...

民工哥的博客 2357

MySQL下载安装教程

下载安装MySQL 下载MySQL 首先我们要进入MySQL的官网:https://www.mysql.com/,如下图所示。 然后点击DOWNLOADS导航栏,点击Community(社区版),最后点击MySQL Community Server下边的DOWNLOAD按钮即可进入MySQL数据库的下载页面。操作如下图所示。 进入MySQL的数据库下载界面后,在“Select Operating...

欢迎来到关关雎鸠儿的博客 1万+

MySQL下载安装及配置

MySQL下载安装及配置一、下载正版MySQL安装包 本次MySQL安装选择的版本为2021-2-3最新版本: 一、下载正版MySQL安装包 一定要注意不要在网络上直接百度等搜索MySQL下载安装,要去MySQL正规官方网站:单击进入 https://www.mysql.com 进入后会看到这样一个界面:单击   DOWNLOADS 单击过后跳转页面往下拉,可以看到三个区域:一个企业版本的;一个集群;还有一个是社区版本的。我们下载的主要是社区版本的 选择社区版本后,会出现这

qq_45844443的博客 4459

如何下载MySQL和如何下载MySQL的JDBC驱动包

1.打开MySql 官网2.点击 DOWNLOADS 和 MySQL Community (GPL) Downloads(MySQL Community (GPL) Downloads需要滚到最下面)截屏2022-12-12 14.23.18.png。

rita_0567的博客 2332

空战中的多目标威胁评估方法_模糊函数评估_模糊评估_目标威胁度_目标威胁_威胁评估_

针对传统空战多目标威胁评估难以满足准确性$实时性的缺陷与不足!提出基于模糊集与证据理论相结合的空战多目标威胁评估方法% 该方法通过合理设置隶属度函数计算各威胁指标的威胁度基本概率赋值!使用改进的证据合成规则代替传统 组合规则对其进行指标间融合及时域融合&采用加权求和的方法计算空中目标的威胁值并排序.

上一篇: (译)win32asm实例-4
下一篇: (译)win32asm实例-6
taowen2002
博客等级 码龄25年 8粉丝 61原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值