當前位置:編程學習大全網 - 源碼下載 - sclock.exe是什麽文件?

sclock.exe是什麽文件?

這是windows平臺的可執行文件 (executable file) 可移植可執行 (PE) 文件格式的文件,它可以加載到內存中,並由操作系統加載程序執行。它可以是 .exe文件 .sys文件 .com文件 .bat文件等。 如記事本程序 notepad.exe ,這類程序通常用來處理或者輔助處理其它文件。比如:myfile.txt雙擊打開由notepad.exe記事本程序來進行編輯。 我們做壹件事,可以把順序以及具體做什麽事寫在mybat.bat文件中,那運行它就可以把要做的事件執行了。 可以理解為:這類文件可以“單獨運行”,或者理解為“有生命”的文件! 如果把它用日常通俗的壹點的例子來形容:衣服,鞋子等都是普通的文件,那人就是可執行文件! 人可以做衣服穿衣服,衣服卻要依靠人來做。布也要由人壹加工成衣服! 2.1 Win32可執行文件的開發過程 在DOS下,生成壹個可執行文件的步驟比較簡單,用編譯器將源程序編譯為obj文件,再用鏈接器將obj文件鏈接成exe文件,不同語言的開發過程都差不多。 DOS可執行文件中的內容是由源程序中所寫的代碼和數據定義轉換而來的。惟壹的例外是帶覆蓋部分(Overlay)的exe文件,它在基本的exe文件後附加了壹些自定義的數據,其中可執行部分的長度由文件頭偏移0002h和0004h中的長度給出,該長度之後到文件實際長度這部分就是Overlay部分。這樣,即使壹個帶覆蓋的exe文件大小遠遠超過640 KB,在DOS下也能運行,因為操作系統只裝入真正的可執行部分,然後由程序自己去讀取覆蓋部分的數據。壹些打包軟件生成的奇大無比的自解壓包就采用這種結構,可執行部分是解包代碼,覆蓋部分是被壓縮的數據。DOS對可執行文件覆蓋部分的數據格式並沒有規定,它是程序員按自己的方式組織的。如果程序員願意,也可以把這些數據單獨放在另外壹個文件中。 Win32可執行文件叫做PE文件。PE文件的基本結構和DOS可執行文件有很大的不同。它把程序中的不同部分分成各種節區(Section),其中可以有壹個節區是放置各種資源的,如菜單、對話框、位圖、光標、圖標和聲音等(詳見第17章)。雖然可以把資源部分理解成類似DOS可執行文件中的“覆蓋”部分,但由於資源是Win32可執行文件的標準組成部分,而且是非常重要的組成部分,它的格式是固定的。所以與DOS軟件的開發過程相比,Win32軟件的開發中多了壹個創建資源文件的步驟。 以使用MASM32軟件包為例,在用Win32匯編開發軟件的流程中,程序員要做的工作分創建代碼和創建資源兩部分,如圖2.1所示。 代碼部分的開發工作與DOS下寫代碼的步驟是壹樣的。程序員用文本編輯器書寫匯編源代碼(*.asm文件)。與C源代碼類似,asm文件中也可以用include語句包含數據定義和函數聲明的頭文件,Win32匯編的頭文件壹般用inc作擴展名。大部分的include文件是編譯器軟件包附帶提供的,如MASM32軟件包附帶的Windows.inc文件定義了Win32 API中很多參數和數據結構,其他的inc文件則是不同DLL中的Win32 API函數聲明。最後,asm文件經匯編編譯器編譯成以obj為擴展名的目標文件。 資源文件中可以包括對話框、快捷鍵、菜單、字符串、版本信息和壹些圖形資源等內容。資源文件的源文件是壹種類似“腳本”的文本文件,它的擴展名壹般為rc,其中用不同的語法定義了不同類型的資源,資源腳本文件最後由資源編譯器編譯成資源文件*.res。資源腳本文件同樣用到很多預定義值,所以軟件包中壹般也包括資源頭文件供源文件來導入。MASM32軟件包中的資源頭文件是Resource.h。 在資源文件中,不同類型資源的記錄方式是不同的。對話框資源只記錄定義值,如對話框的大小、位置等,並非真正存儲對話框最後顯示在屏幕上的像素。這些大小、位置等信息最後由Windows解釋後才在屏幕上被繪畫成像素;菜單、字符串、快捷鍵等由文本構成;圖形資源則真正由像素組成,它們在資源腳本中被定義為壹個文件名,由資源編譯器從磁盤文件導入。Windows在資源中支持的圖形文件有bmp位圖文件、cur光標文件和ico圖標文件,這些圖形文件可以用其他圖形處理軟件生成。另外,wav聲音文件也可以用在資源中。創建資源的方法在第5章中有詳細的描述。 圖2.1 Win32可執行文件的開發過程 編譯好目標文件*.obj和資源文件*.res後,最後壹步是用鏈接器將它們鏈接成可執行文件。鏈接的時候要用到函數庫。在DOS環境下編程的時候,使用的函數庫是靜態庫。靜態庫是壹些已經編譯好的代碼模塊。當用戶在源程序中用到某個函數的時候,鏈接器從庫文件中將這個函數的二進制代碼取出,與obj文件合在壹起生成最終的exe文件。但在Win32環境下,大部分的公用函數封裝在DLL文件中,以動態鏈接的方式供用戶程序調用。這時候庫文件中只需要包含函數在DLL中的位置信息,不再需要有二進制代碼部分。所以鏈接的時候也只是把庫文件中的位置信息取出放入最後的可執行文件中。Win32中這種只包含位置信息的庫文件稱為導入庫。動態鏈接的概念在第11章中有詳細的描述。 由於Win32匯編編程中使用不同匯編編譯器的時候,匯編源程序的格式和資源腳本文件的格式可能稍微有所不同。各種頭文件、庫文件的文件名也有所不同。所以在開始編程之前,必須先選定壹種合適的編譯器。 2.2 編譯器和鏈接器 選擇匯編編譯器是開始工作的第壹步。不同的編譯器用法各不相同,選擇合適的編譯器可以為開發工作節省很多的時間。這裏簡單介紹幾種不同系列的編譯器。常用的匯編編譯器有Microsoft公司的MASM系列和Borland公司的TASM系列,還有壹些小公司推出的或者免費的匯編軟件包。

記得采納啊

  • 上一篇:求幾個科幻電影,越多越好,比如終結者,X戰警……
  • 下一篇:英語翻譯 計算機的
  • copyright 2024編程學習大全網