亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? startup.txt

?? windows exe文件的結(jié)構(gòu)、初始化
?? TXT
字號(hào):

Windows Application Startup

This topic describes the startup requirements of applications 
for the Windows operating system. It also discusses the steps 
needed to initialize an application before its entry-point 
function, WinMain, can be called. 

Startup Requirements

When Windows starts an application, it calls a startup 
routine supplied with the application rather than the 
application's WinMain function. The startup routine is 
responsible for initializing the application, calling WinMain
, and exiting the application when WinMain returns control. 
When Windows first calls the startup routine, the processor 
registers have the following values: 

Register Value

AX       Contains zero. 
BX       Specifies the size, in bytes, of the stack. 
CX       Specifies the size, in bytes, of the heap. 
DI       Contains a handle identifying the new application 
         instance. 
SI       Contains a handle identifying the previous 
         application instance. 
BP       Contains zero. 
ES       Contains the segment address of the program segment 
         prefix (PSP). 
DS       Contains the segment address of the automatic data 
         segment for the application. 
SS       Same as the DS register. 
SP       Contains the offset to the first byte of the 
         application stack. 
To initialize and exit a Windows application, the startup 
routine must follow these steps: 
1 Initialize the task by using the InitTask function. InitTask
   also returns values that the startup routine passes to the 
   WinMain function. 
2 Clear the event that started the task by calling the 
  WaitEvent function. 
3 Initialize the queue and support routines for the 
  application by calling the InitApp function with the 
  instance handle returned by the InitTask function. 
4 Call the entry point for the application, the WinMain
  function. 
5 Exit the application by calling the MS-DOS End Program 
  function (Interrupt 21h Function 4Ch) when WinMain returns. 
Although the startup routine is essentially the same for all 
Windows applications, a variety of startup routines may need 
to be developed to accommodate the different memory models and 
high-level language run-time libraries used by Windows 
applications. If a Windows application uses functions and 
variables provided by run-time libraries, the startup routine 
may need to be customized to initialize the library at the 
same time as the application. Customizing the startup routine 
for run-time library initialization is entirely dependent on 
the library and is, therefore, beyond the scope of this topic. 

Example of a Startup Routine

A startup routine initializes and exits a Windows 
application. The routine in the following example, the 
__astart function, shows the code needed for startup, which 
includes Cmacros defined in the CMACROS.INC header file. When 
assembled, this code is suitable for small-model Windows 
applications that do not use run-time libraries: 
.xlist
memS = 1    ; small memory model
?DF = 1     ; Do not generate default segment definitions.
?PLM = 1;
?WIN = 1;
include cmacros.inc
.list
STACKSLOP = 256
createSeg   _TEXT,CODE,PARA,PUBLIC,CODE
createSeg NULL, NULL, PARA,PUBLIC,BEGDATA,DGROUP
createSeg _DATA,DATA, PARA,PUBLIC,DATA,   DGROUP
defGrp      DGROUP,DATA
assumes DS,DATA
sBegin      NULL
            DD  0
labelW      <PUBLIC,rsrvptrs>
maxRsrvPtrs = 5
            DW  maxRsrvPtrs
            DW  maxRsrvPtrs DUP (0)
sEnd        NULL
sBegin  DATA
staticW hPrev,0             ; Save WinMain parameters.
staticW hInstance,0
staticD lpszCmdline,0
staticW cmdShow,0
sEnd    DATA
externFP   <INITTASK>
externFP   <WAITEVENT>
externFP   <INITAPP>
externFP   <DOS3CALL>
externP    <WINMAIN>
sBegin  CODE
assumes CS,CODE
labelNP <PUBLIC,__astart>
        xor     bp,bp                   ; zero bp
        push    bp
        cCall   INITTASK                ; Initialize the task.
        or      ax,ax
        jz      noinit
        add     cx,STACKSLOP            ; Add in stack slop space.
        jc      noinit                  ; If overflow, return error.
        mov     hPrev,si
        mov     hInstance,di
        mov     word ptr lpszCmdline,bx
        mov     word ptr lpszCmdline+2,es
        mov     cmdShow,dx
        xor     ax,ax                   ; Clear initial event that
        cCall   WAITEVENT,<ax>          ;   started this task.
        cCall   INITAPP,<hInstance>     ; Initialize the queue.
        or      ax,ax
        jz      noinit
        cCall   WINMAIN,<hInstance,hPrev,lpszCmdline,cmdShow>
ix:
        mov     ah,4Ch
        cCall   DOS3CALL                ; Exit with return code from app.
noinit:
        mov     al,0FFh                 ; Exit with error code.
        jmp short ix
sEnd     CODE
        end __astart                    ; start address
Windows requires the null segment (containing the rsrvptrs 
array), which is defined at the beginning of this sample. The 
InitTask function copies the top, minimum, and bottom address 
offsets of the stack into the third, fourth, and fifth 
elements of the rsrvptrs array. Applications can use these 
offsets to check the amount of space available on the stack. 
The debugging version of Windows also uses these offsets to 
check the stack. Applications must, therefore, not change 
these offsets, since doing so can cause a system debugging 
error (RIP). 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产一级片| 亚洲欧洲中文日韩久久av乱码| 亚洲国产欧美在线| 欧美色视频在线| 日韩精品91亚洲二区在线观看 | 欧美丝袜丝交足nylons| 亚洲免费毛片网站| 欧美日韩亚洲综合一区| 日韩中文欧美在线| 久久久影院官网| www.66久久| 亚洲成人激情社区| 91精品国产一区二区| 国产一区二区三区黄视频| 久久精品亚洲麻豆av一区二区 | 美女视频黄 久久| 欧美精品一区二区久久婷婷| 成人网在线免费视频| 亚洲美女电影在线| 日韩一区二区三区免费观看| 国产精品一区在线观看乱码| 又紧又大又爽精品一区二区| 欧美日韩国产小视频在线观看| 久久精品国产77777蜜臀| 中文字幕欧美三区| 欧美羞羞免费网站| 国产一区二区三区精品视频| 一区二区三区精品| 欧美va亚洲va| 色综合久久九月婷婷色综合| 青椒成人免费视频| 亚洲精品网站在线观看| 欧美xxxxxxxx| 91美女在线视频| 久久99久久久欧美国产| 亚洲天堂a在线| 精品少妇一区二区三区在线播放| 99国产一区二区三精品乱码| 久久精品久久99精品久久| 亚洲人123区| 欧美精品一区二区三区很污很色的 | 国产欧美综合色| 久久综合久久鬼色中文字| 成人高清视频在线| 日韩精品亚洲专区| 亚洲少妇中出一区| 精品国产乱码久久久久久影片| 一本大道久久精品懂色aⅴ| 国产美女精品一区二区三区| 午夜精品视频一区| 一区视频在线播放| 精品国产凹凸成av人网站| 在线观看亚洲精品| 制服.丝袜.亚洲.中文.综合| 波多野结衣91| 九九国产精品视频| 天天综合天天综合色| 亚洲色图在线播放| 中文字幕不卡在线播放| 久久综合国产精品| 欧美一区二区三区公司| 精品视频1区2区3区| 91在线观看污| 懂色av一区二区三区免费观看 | 欧美优质美女网站| aaa亚洲精品| 成+人+亚洲+综合天堂| 国产v综合v亚洲欧| 国内精品久久久久影院薰衣草| 日韩精品乱码免费| 日本va欧美va精品发布| 午夜精品在线看| 亚洲成a人v欧美综合天堂下载| 亚洲美女免费视频| 亚洲综合激情小说| 亚洲午夜激情av| 亚洲制服丝袜一区| 亚洲狠狠爱一区二区三区| 一区二区三区**美女毛片| 亚洲最色的网站| 亚洲国产wwwccc36天堂| 亚洲观看高清完整版在线观看 | aaa国产一区| 91免费版pro下载短视频| 色综合天天综合网天天狠天天| www.久久久久久久久| 97se亚洲国产综合自在线| 99热在这里有精品免费| 91色|porny| 欧美人与z0zoxxxx视频| 欧美精品第1页| 日韩欧美视频一区| 久久婷婷色综合| 国产欧美一区二区精品性色| 国产精品久久毛片a| 亚洲精品国产第一综合99久久 | 中文字幕亚洲区| 亚洲女与黑人做爰| 亚洲电影一级黄| 天堂av在线一区| 韩国精品主播一区二区在线观看 | 亚洲精品免费播放| 亚洲国产欧美在线人成| 日韩电影一区二区三区四区| 韩国成人精品a∨在线观看| 国产福利精品导航| 色哟哟国产精品免费观看| 777欧美精品| 久久精品这里都是精品| 亚洲日韩欧美一区二区在线| 午夜免费久久看| 国产在线播放一区二区三区| 欧美日韩国产影片| 欧美精品一区二区蜜臀亚洲| 自拍视频在线观看一区二区| 天堂蜜桃91精品| 成人黄色av电影| 欧美一区二区三区免费| 中文字幕欧美一区| 日韩成人免费电影| caoporen国产精品视频| 91精品国产91久久综合桃花| 国产午夜精品久久久久久久 | 99精品视频一区| 91麻豆精品国产91久久久资源速度 | 午夜精品国产更新| 国产凹凸在线观看一区二区| 欧美精品粉嫩高潮一区二区| 国产精品久久二区二区| 丝袜亚洲另类欧美| 成人的网站免费观看| 日韩欧美的一区二区| 亚洲综合一区二区三区| 国产91精品一区二区麻豆网站| 欧美日韩成人一区| 亚洲色图欧美在线| 国产一二三精品| 8x8x8国产精品| 一区二区三区成人在线视频 | 97成人超碰视| 久久综合99re88久久爱| 爽爽淫人综合网网站| 99精品偷自拍| 国产精品欧美经典| 精品亚洲国产成人av制服丝袜| 欧美色综合久久| 亚洲欧洲精品一区二区三区不卡| 狠狠色丁香婷婷综合| 欧美一区二区三区四区高清| 一区二区在线看| av在线播放一区二区三区| 国产亚洲精品久| 美国三级日本三级久久99| 欧美日韩免费一区二区三区| 18涩涩午夜精品.www| 国产成人一级电影| 2024国产精品| 精品一区二区免费视频| 91麻豆精品国产91久久久资源速度| 亚洲在线视频网站| 色吧成人激情小说| 国产精品久久久久婷婷二区次| 国产精品99久久久久久宅男| 欧美一级理论片| 免费一级欧美片在线观看| 日韩一级完整毛片| 久久国产综合精品| 精品免费视频.| 狠狠色丁香久久婷婷综合_中| 亚洲精品一区二区三区香蕉| 精品午夜久久福利影院| 精品黑人一区二区三区久久| 久久激情五月婷婷| 国产婷婷一区二区| av在线不卡免费看| 樱桃视频在线观看一区| 欧洲av在线精品| 午夜激情一区二区三区| 91精品国产一区二区三区蜜臀| 免费精品99久久国产综合精品| 日韩欧美专区在线| 精品一区二区三区久久| 国产日韩影视精品| eeuss国产一区二区三区| 一区二区三区久久久| 欧美美女一区二区| 卡一卡二国产精品| 国产精品女上位| 日本国产一区二区| 日韩极品在线观看| 2022国产精品视频| av高清不卡在线| 亚洲国产精品影院| 欧美成人精品高清在线播放| 国产高清久久久久| 亚洲精品免费一二三区| 日韩一区二区在线观看| 国产99一区视频免费| 亚洲一区二区三区视频在线| 欧美电影免费观看高清完整版在 |