• 第一章 开始


    1.基础

    掌握c语言+熟练windows界面操作系统

    2.语言选项

    使用 C 语言和原始的 API 不是编写 Windows 98 程式的唯一方法。然而,这
    种方法却提供给您最佳的性能、最强大的功能和在发掘 Windows 特性方面最大
    的灵活性。可执行档案相对较小且运行时不要求外部程式库(自然,Windows DLL
    自身除外)。最重要的是,不管您最终以什么方式开发 Windows 应用程式,熟
    悉 API 会使您对 Windows 内部有更深入的了解。

    可选语言很多 c/c++/vb/java

    显然,很难说哪种方法更有利於开发 Windows 应用程式。更主要的是,也
    许是应用程式自身的特性决定了所使用的工具。不管您最後实际上使用什么工
    具写作程式,学习 Windows API 将使您更深入地了解 Windows 工作的方式。
    Windows是一个复杂的系统,在API上增加一个程式写作层并未减少它的复杂性,
    仅仅是掩盖了它,早晚您会碰到它。了解 API 会给您更好的补救机会。

    以上一堆大佬经验

    3.第一个win32程序与c程序的对比

    c程序:

    #include <stdio.h>
    int main ()
    {
    printf ("hello, world\n") ;
    return 0 ;
    }
    我们还可以包括 main 的参数,把程式弄得更长一些,但让我们暂且这样就
    好了——包括一个 include 宣告、程式的进入点、一个对执行期程式库函式的
    呼叫和一个 return 语句。

    同样效果的 Windows 程式
    Windows 关於「hello, world」程式的等价程式有和文字模式版本完全相同
    的元件。它有一个 include 宣告、一个程式进入点、一个函式呼叫和一个 return
    语句。下面便是该程式:
    /*------------------------------------------------------------------
    HelloMsg.c -- Displays "Hello, Windows 98!" in a message box
    (c) Charles Petzold, 1998
    --------------------------------------------------------------------*/
    #include <windows.h>
    int WINAPI WinMain ( HINSTANCE hInstance, HINSTANCE hPrevInstance,
    PSTR szCmdLine, int iCmdShow)
    {
    MessageBox (NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0);
    return 0 ;
    }

    WinMain 函式宣告为返回一个 int 值。WINAPI 识别字在 WINDEF.H 定义,语
    句如下:

    #define WINAPI __stdcall
    该语句指定了一个呼叫约定,包括如何生产机械码以在堆叠中放置函式呼
    叫的参数。许多 Windows 函式呼叫宣告为 WINAPI。

    WinMain 的第一个参数被称作「执行实体代号」。在 Windows 程式设计中,
    代号仅是一个应用程式用来识别某些东西的数字。在这种情况下,该代号唯一
    地标识该程式,还需要它在其他 Windows 函式呼叫中作为参数。在 Windows 的
    早期版本中,当同时运行同一程式多次时,您便创建了该程式的「多个执行实
    体(multiple instances)」。同一应用程式的所有执行实体共用程式和唯读
    的记忆体(通常是例如功能表和对话方块模板的资源)。程式通过检查
    hPrevInstance 参数就能够确定自身的其他执行实体是否正在运行。然後它可以
    略过一些繁杂的工作并从前面的执行实体将某些资料移到自己的资料区域。
    在 32 位元 Windows 版本中,该概念已被抛弃。传给 WinMain 的第二个参数

    总是 NULL(定义为 0)。
    WinMain 的第三个参数是用於执行程式的命令列。某些 Windows 应用程式利
    用它在程式启动时将档案载入记忆体。WinMain 的第四个参数指出程式最初显示
    的方式,可以是正常的或者是最大化地充满整个画面,或者是最小化显示在工
    作列中。我们将在第三章中介绍使用该参数的方法。

  • 相关阅读:
    有关vue中组件间的传值问题
    有关vue中同一个组件配置不同的路由产生的系列
    有关vue中用element ui 中的from表单提交json格式总是有冒号的问题解决办法
    有关element ui 中的switch在表格多列显示中全部为关闭或开启
    有关element ui中的 switch在表格中使用多个时互相不收影响的问题
    【PostgreSQL-9.6.3】修改监听的IP和端口
    【Oracle】truncate分区表
    【Oracle】append
    【PostgreSQL-9.6.3】函数(3)--日期和时间函数
    【PostgreSQL-9.6.3】函数(2)--字符型函数
  • 原文地址:https://www.cnblogs.com/echoli/p/9649437.html
Copyright © 2020-2023  润新知