- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在linux _start()
中是触发main()
函数的汇编函数。
Windows 中有什么?我不确定我的问题是对还是错?
实际上我正在尝试在 Linux 中使用 _start() - 工作正常。但是 DevC++(windows) 中的代码相同
[Linker error] undefined reference to `WinMain@16'
最佳答案
Windows 使用函数 WinMain() 作为入口点,声明如下:
int CALLBACK WinMain(HINSTANCE hInstance,
HINSTANCE hPreviousInstance,
LPSTR lpszCmdLine,
int nCmdShow);
我将尝试向您解释 WinMain()
的基础知识。
要理解这些 HINSTANCE
类型的含义,我们必须求助于文件类比。当您使用经典的 系统调用 (open ())
打开文件时,您会得到一个称为文件描述符的整数值。但在微软的命名法中,这叫做句柄,或者英文。大多数 Windows API 函数都使用句柄,它们是对可在 Windows 中使用的对象的引用。
句柄与文件描述符完全一样。它们是除了值本身之外没有特殊含义的数值(例如,它们不是指向对象的指针)...
例如:一个进程有一个对应于它的实例的句柄(HINSTANCE
)。请注意,同一个进程可以运行多次(您可以从同一个应用程序打开两个窗口 - 例如,试试记事本)。所以正在执行的实例的“句柄”被传递给hInstance
中的WinMain
,上面...第二个“句柄”,hPreviousInstance,仅仅是历史的...在Win16 API 进程被放置在一个列表中,并且在 hPreviousInstance
中报告了应用程序的前一个实例的句柄......在 Win32 之后,这个参数将始终为 NULL(或 0)。
我们的入口点不是获取参数列表(与 argv 数组一样,在 main () 函数中),而是提供一个指向包含命令行的字符串的简单指针。 LPSTR
类型可以理解为“Long Pointer to STRing”,即“char *”……这里的“long”一词也是历史悠久的。
第四个参数是 Windows 发送给应用程序的常量,通知它用户希望如何显示第一个窗口(或者它是否会在最初隐藏!)...通常使用的常量是 SW_SHOW
。这里有一个解释:Windows 头文件定义了符号常量的“刻度”(量级的通用度量),其中许多是位图,也就是说,它们可以通过 OR 运算符“添加”到其他。
WinMain()
函数会返回一个应该为 0 的整数值或 WM_QUIT
消息中的一个值(稍后我会解释)... 那就是,通常此值将为 0,并且与在 DOS 中学到的“ERRORLEVEL
”无关...Windows 不处理 ERRORLEVEL
。
关于_start() 的对应物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23980256/
我想检查我的应用程序或系统中是否存在库。在 Java 中,我通常执行 System.loadlibrary,但是有谁知道 C 中类似的相应调用吗? 最佳答案 是dlopen打开一个库,dlsym 从加
我在 typescript 中输入以下内容 export type Excludable = T & { isExcluded?: boolean } 其中过滤值: export type Filte
我最近在我的应用程序中添加了一种方法,可以自动格式化 TextView ,从“50000”到“50,000”,效果绝对完美。现在我遇到的问题是,在我的应用程序中,有多个按钮功能可以从该 TextVie
SELECT * FROM conversations WHERE chatMembers LIKE '%1%'AND chatMembers LIKE '%10%' 对话表 id | chatMem
我正在编写一个需要将 Java Date() 值保存到 MySQL 数据库的 RESTful Web 服务,但是,我不确定 MySQL 中可以保存 Java Date() 的数据类型是什么,或者我是否
同样,在任何 Red Hat 或 JBoss 站点上都没有关于此的信息,所以我在这里问... 我不确定是 13 还是 14。 最佳答案 Mapping the Community versions w
同样,在任何 Red Hat 或 JBoss 站点上都没有关于此的信息,所以我在这里问... 我不确定是 13 还是 14。 最佳答案 Mapping the Community versions w
我曾尝试使用 swift 开发一款利用 iPhone 的 3D 触摸硬件的游戏。然而,当我将我的应用程序提交到 App Store 时,它被拒绝了,因为该游戏无法在 iPad 上玩。 我的问题是,
Qt 的有序关联容器对应项 std::map是QMap , std::set是QSet , 对于无序关联容器 std::unordered_map是QHash . 我应该用什么来代替std::unor
JavaScript 方法 String.fromCharCode() 在以下意义上与 Python 的 unichar() 等效: print unichr(213) # prints Õ on t
正如谷歌在 "Discontinuing support for JSON-RPC and Global HTTP Batch Endpoints" 中提到的那样,Google API 客户端库已重新
我正在使用 MapLayer 和 MapOverlay 在 map 中创建自己的路径/折线,GPS 捕获的所有点都存储在一个结构中,以便我可以访问它们。随时。 现在,我希望路径在用户操作 map (缩
我们使用 Adobe Flash Builder 创建由 Flex 提供支持的交互式 Web 应用程序。现在我们正在寻找替代方案,让我们在 UI 设计和迎合 HTML5 的编码方面拥有同样的开发便
我想知道Android/Java 中类似C#/C++ 中的GetTickCount 方法的相应方法吗? 最佳答案 Android 为 SystemClock.uptimeMillis() .请注意,u
我用 Vue + Phaser 开始了新项目,但是当我尝试加载 Assets 时,this.game.load.image 中的“load”和“add”返回“undefined”。我尝试从 JS 文件
我是一名优秀的程序员,十分优秀!