[Windows編程] 如何判斷作業系統是64位還是32位

64位Wnidows 裡面有個叫Wow64 的模擬器技術,可以使32位的程式在64位Windows 上運行。 當你想在程式裡面針對32b位/ 64位系統執行不同代碼的時候, 需要判斷作業系統是32位還是64位。 使用 Windows API函數 GetNativeSystemInfo 可以獲得這個資訊。 程式碼範例: SYSTEM_INFO si;GetNativeSystemInfo(&si);if (si.wProcessorArchitecture ==

[IE技巧] 如何關閉Windows Server版IE的安全限制

Windows Server 上的IE 有嚴格的安全限制。 原因是伺服器最重要的是穩定安全,一般情況下不應該用伺服器來上網衝浪。 Server版IE 的安全限制叫做 IE ESC (Enhanced Security Configuration) ,微軟的KB 文章有詳細介紹: http://support.microsoft.com/kb/815141 或者下載微軟官方的IE ESC文檔。  如果你希望Windows Server上能夠像win

Windows NT/2k/XP/Vista 管理員密碼重設

當忘記管理員密碼的時候,可以藉助以下工具來重設密碼: 1) Winternals ERD Commander  (Winternals 被微軟收購之後,該工具成為 Microsoft Diagnostics and Recovery Toolset 的一部分) , 可以在微軟的網站上下載 2) http://home.eunet.no/~pnordahl/ntpasswd/  (網友做的工具,需要製作啟動光碟片)  

windows下手動設定ipv6地址

在XP,2003等早期版本中,ipv6地址在“網路連接”的屬性配置裡是無法手工配置的,只能使用netsh配置。配置方法如下:首先,安裝IPV6協議,ipv6 install第二步,查看當前使用的本地串連資訊:如,我的為“本地串連 3”,依次執行以下命令:C:\Documents and Settings\Administrator>netshnetsh>interface ipv6netsh interface ipv6>show int正在查詢活動狀態...索引 Met  

Windows命令列下配置IP地址

最近把公司的筆記本帶回住處,晚上無線上會兒網,第二天到公司發現原來設定的有線網卡的IP地址沒有了,每天需要手工設定一次,實在不爽,今天研究了一下用批處理解決這個問題,如下:第一步,先用ipconfig /all找出想要設定IP地址的網卡名稱中的"本地串連"是我的有線網卡第二步,開啟記事本,把下面的語句複製過去netsh interface IP add address "本地串連" 192.168.56.194 255.255.255.0 netsh interface IP set

WINDOWS遠程無人值守安裝伺服器

遠程無人值守安裝伺服器對於普通管理員來說,我們常會遇到給很多電腦安裝作業系統,對於給多電腦安裝系統,我們也都有很多方法,在這裡,我給大家介紹一種比較方便快捷的方式!遠程無人值守安裝,這種安裝方式可以提高安裝多台電腦的效率!關於遠程無人值守安裝伺服器的要求:①對於硬體的要求並不高,所以普通的電腦帶個三五十台客戶機沒什麼問題②需要運行伺服器作業系統,還要有一個完全空的分區③該電腦要同時為網域服務器,DNS伺服器,DHCP伺服器,遠端安裝伺服器下面我們第一步安裝,首先運行dcpromo,將該伺服器提升

[Windows編程] 如何捕捉程式異常/crash 並產生 dump 檔案

前面介紹如如何用WinDBG 產生crash dump 《WinDBG 技巧:如何產生Dump 檔案(.dump 命令) 》,但是使用者機器上通常不安裝WinDBG, 而且多數使用者也不知道怎麼使用WinDBG。 所以最好是自己程式裡面能夠捕捉exception/crash,並且產生crash dump,然後通過網路傳回到自己伺服器。 捕捉exception 可以用API 函數 SetUnhandledExceptionFilter 。產生crash dump 可以用DbgHelp.dll

[Windows編程] 使用AttachThreadInput 來捕捉其它視窗的鍵盤輸入

在一些情況下(比如螢幕軟鍵盤或者IME程式),自己的視窗沒有輸入焦點但是想要當前焦點視窗的鍵盤輸入訊息,可以使用Win32 API函數AttachThreadInput()來解決這個問題。AttachThreadInput把一個線程(idAttach)的輸入訊息串連到另外線程(idAttachTo)。 函數定義:BOOL WINAPI AttachThreadInput(  __in  DWORD idAttach,  __in  DWORD idAttachTo,  __in  BOOL

Windows 7 的一些提示

http://blogs.msdn.com/tims/archive/2009/01/12/the-bumper-list-of-windows-7-secrets.aspx  Windows 7 增加了不少快速鍵, 試試看吧  Win+Left Arrow and Win+Right Arrow Win+Up Arrow and Win+Down Arrow Win+Shift+Up Arrow and Win+Shift+Down Arrow Win+P Win+X Win+Home

[Windows編程] 通過GetModuleHandleEx 得到函數調用者所在的DLL/EXE

在有些情況下需要得到函數調用者的模組名字。比如你想限制你的某個函數只能被自己某個特定的DLL調用。 或者比如在異常處理中你想瞭解是那個DLL/EXE拋出了異常。  API函數_ReturnAddress 和GetModuleHandleEx 函數可以協助我們達到這個目的。以下代碼示範它們的用法:  void ShowCallerModuleName(){HMODULE hCallerModule = NULL; TCHAR szModuleName[MAX_PATH] =

[Windows編程] 如何判斷一個視窗已經停止回應

使用API函數IsHungAppWindow,可以判斷視窗是否已經停止回應。於是可以利用其他線程把這個視窗關閉,避免產生不良的使用者體驗。 BOOL IsHungAppWindow(          HWND hWnd); MSDN文檔: http://msdn.microsoft.com/en-us/library/ms633526.aspx 該函數從Win2000 版本開始才有。在早期的作業系統上,可以使用API函數SendMessageTimeout 來達到相同的目的。 LRESULT 

[Windows編程] stack overflow != stack buffer overflow

經常看到有人把2個概念混淆, 其實這2者是有區別的。Windows 中它們的異常代碼也是不同的: STATUS_STACK_OVERFLOW (0xc00000fd )STATUS_STACK_BUFFER_OVERRUN (0xc0000409)下面這篇文章很好地解釋了它們的不同: Stack overflow (stack exhaustion) not the same as stack buffer

[Windows編程] 使用.local 重新導向DLL 載入路徑

在調試DLL或COM程式的時候, DLL檔案可能會被其他程式佔用,而無法被替換。 在WinXP,Vista 上, 可以通過建立.local 檔案夾來重新導向DLL 的載入路徑 步驟(假設你的EXE為MyApp.exe, 要調試的DLL為 MyModule.dll):1) 在 MyApp.exe 的目錄下建立一個 MyApp.exe.local 2) 把你希望載入的 MyModule.dll 複製到 MyApp.exe.local 目錄下3) 運行 MyApp.exe  原來的

[Windows編程] 監視DLL裝載/卸載

Windows 驅動開發庫裡面提供了函數 LdrRegisterDllNotification , LdrUnregisterDllNotification , 可以讓你監視進程裝載/卸載DLL 的事件。 當你想在某個DLL被載入的時候Hook它的函數; 或者當你想在某個DLL推出之前做一些儲存清理工作; 或者當你想阻止某個DLL 被載入(比如外掛) .... 這個機制正可以派上用場 。  以下是程式碼範例如何使用 LdrRegisterDllNotification ,

[Windows 編程] 如何截獲 Alt+Tab 事件

Windows 中 Alt + Tab 按鍵組合被用來在各個程式之間切換。 因此,該鍵盤訊息 (WM_KEYDOWN/UP) 是直接發給系統核心, 在應用程式中的訊息迴圈中截獲不到。  一個常見問題是,可是有的應用程式想在被Alt+TAB 切換到後台之間做點事情, 這時候該怎麼辦? 方案之一就是用底層的鍵盤鉤子,截獲整個系統的鍵盤輸入。但這樣做會導致一些效率以及穩定性問題。 另外一個比較方便安全的方案就是用 Windows Accessbility API 的 SetWinEventHook

[Windows編程] 使用API函數GetProcAddress的注意事項

Windows API 函數 GetProcAddress 被廣泛用於取得函數指標地址。 例如: typedef BOOL (WINAPI *pfnGetProductInfo)(DWORD, DWORD, DWORD, DWORD, PDWORD); pGPI = (pfnGetProductInfo) GetProcAddress(GetModuleHandleW(L"kernel32.dll"), "GetProductInfo"); 注意函數定義typedef 中的WINAPI,

windows查詢佔用連接埠的pid以及查詢對應的過程名稱

windows查詢佔用連接埠的pid以及查詢對應的過程名稱做項目標時辰經常8080連接埠無故被佔用,弄了好久終於搞熟悉打聽了,特此記錄下來。輸入號令行:netstat -ano,獲得下面的,可以清楚的看到是 pid為5616的佔用8080連接埠。接著輸入:tasklist號令查詢所有的pid對應的過程,如:最後找到對應的過程在任務經管器中停止掉。

Windows安裝Git用戶端工具

首先下載msysgit,主要站台:http://msysgit.github.com/注意,不是git for windows,而是msysgit。我下載的是Git-1.7.11-preview20120710.exe安裝後就可以使用Git

Windows 通過公開金鑰訪問Git Server

Reviewboard的windows用戶端, Gerrit的windows用戶端, Jenkins的Windows server端都需要這種方式。1.請先安裝Git bash和TortoiseGit程式。2.先運行Git bash,在bash終端上運行ssh-keygen.exe 不要輸入密碼,最後會告訴你產生了公開金鑰和私密金鑰檔案,記住名稱。3.將公開金鑰檔案改名,根據檔案內容的最後一個字串,然後按照我的這篇文章裡面的(5.加入新使用者)方式加入到Git

windows7 安裝Emacs 24

最近因為需要開發windows上的產品,又回到windows上來,因為要寫newlisp指令碼,還是emacs用起來比較方便。下面介紹一下安裝最新版本的emacs的步驟,1. 從http://core.ring.gr.jp/pub/GNU/emacs/windows/ 下載檔案emacs-24.3-bin-i386.zip2. 解壓後放在自己的使用者目錄下,比如我的位置:C:\Users\shu6889.CHN\emacs-24.3-bin-i3863. 看一下目錄中的說明檔案README.W3

總頁數: 1469 1 .... 398 399 400 401 402 .... 1469 Go to: 前往
Tags Index:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。