win32匯編環境,窗口程序中單選框的一般操作示例

;運行效果

;win32匯編環境,窗口程序中單選框的一般操作示例
;比如在窗口程序中生成單選框,默認哪項選中,判斷當前選中哪一項,讓哪項選中,得到選中項的名稱等
;直接抄進RadAsm可編譯運行。重點部分加備注。
;以下是ASM文件
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.386?
.model flat,stdcall?
option casemap:none?
include ? ? ?windows.inc?
include ? ? ?user32.inc ? ? ? ? ??
include ? ? ?kernel32.inc?
include ? ? ?gdi32.inc

includelib ? kernel32.lib?
includelib ? user32.lib?
includelib ? gdi32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.DATA ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
ClassName ? db "SimpleWinClass",0 ? ? ? ?
AppName ? ? db "窗口程序的模版",0 ? ? ? ?

szButtonClassName ? db "button",0 ? ? ? ? ? ? ?;單選框屬于按鈕類名
szTitle ? ? ? ? ? ? db "提示",0?

szCheckTitle ? ? ? ?db "請選一位美女",0
szCheckTitle01 ? ? ?db "西施",0?
szCheckTitle02 ? ? ?db "紹嬋",0
szCheckTitle03 ? ? ?db "妲已",0
szChecked01 ? ? ? ? db "當前選中的是: 西施",0?
szChecked02 ? ? ? ? db "當前選中的是: 紹嬋",0?
szChecked03 ? ? ? ? db "當前選中的是: 妲已",0?

szCheshi_Format01 ? db "得到的數字是 %d",0
szCheshi_Format02 ? db "得到的字符串的字節數是 %d",0

szButtonTitle01 ? ? db "點擊查看當前選定了哪一項",0?
szButtonTitle02 ? ? db "讓所有項都處于未選中狀態",0?
szButtonTitle03 ? ? db "選中第3項",0?
szButtonTitle04 ? ? db "得到第1項的名稱",0?
szButtonTitle05 ? ? db "得到第2個編輯框的密碼",0?

.DATA? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
hInstance HINSTANCE ?? ? ? ? ? ? ? ? ?
CommandLine LPSTR ? ???
hID_GROUP ? ?dd ? ? ? ? ?;組框控件句柄
hID_CHECK01 ?dd ? ? ? ? ?;單選框控件句柄
hID_CHECK02 ?dd ? ??
hID_CHECK03 ?dd ??

hIDB01 ? ? ? dd ? ? ? ? ?;按鈕控件句柄
hIDB02 ? ? ? dd ? ?
hIDB03 ? ? ? dd ? ?
hIDB04 ? ? ? dd ?

.CONST ? ? ? ? ? ? ??
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>; Equ 等值定義;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
ID_CHECK01 ?equ 11 ? ? ? ?;編輯框控件標識符
ID_CHECK02 ?equ 12
ID_CHECK03 ?equ 13 ?
? ? ?
IDB01 ? ? ? equ 21 ? ? ? ?;按鈕控件標識符
IDB02 ? ? ? equ 22 ?
IDB03 ? ? ? equ 23 ?
IDB04 ? ? ? equ 24

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.CODE ? ? ? ? ? ? ? ? ? ? ?

start: ? ? ? ? ? ? ? ? ? ? ?
invoke GetModuleHandle, NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
mov hInstance,eax?
invoke GetCommandLine ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
mov CommandLine,eax?
invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT ? ? ? ?
invoke ExitProcess, eax ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD?
? ? ? ? LOCAL wc:WNDCLASSEX ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? LOCAL msg:MSG?
? ? ? ? LOCAL hwnd:HWND?

? ? ? ? mov ? wc.cbSize,SIZEOF WNDCLASSEX ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? mov ? wc.style, CS_HREDRAW or CS_VREDRAW ? ? ? ? ? ? ? ? ? ??
? ? ? ? mov ? wc.lpfnWndProc, OFFSET WndProc ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? mov ? wc.cbClsExtra,NULL?
? ? ? ? mov ? wc.cbWndExtra,NULL?
? ? ? ? push ?hInstance?
? ? ? ? pop ? wc.hInstance?
? ? ? ? mov ? wc.hbrBackground,COLOR_WINDOW+1?
? ? ? ? mov ? wc.lpszMenuName,NULL?
? ? ? ? mov ? wc.lpszClassName,OFFSET ClassName?
? ? ? ? invoke LoadIcon,NULL,IDI_APPLICATION ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? mov ? wc.hIcon,eax?
? ? ? ? mov ? wc.hIconSm,eax?
? ? ? ? invoke LoadCursor,NULL,IDC_ARROW ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? mov ? wc.hCursor,eax?
? ? ? ? invoke RegisterClassEx, addr wc ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? invoke CreateWindowEx,NULL, ADDR ClassName,ADDR AppName,WS_CAPTION or WS_SYSMENU or WS_MINIMIZEBOX ,100,100,250,340, NULL,NULL,hInst, NULL?
? ? ? ? mov ? hwnd,eax?
? ? ? ? invoke ShowWindow, hwnd,CmdShow ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ?invoke UpdateWindow, hwnd ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? .while TRUE ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke GetMessage, ADDR msg,NULL,0,0?
? ? ? ? ? ? ? ? .break .if (!eax)?
? ? ? ? ? ? ? ? invoke TranslateMessage, ADDR msg?
? ? ? ? ? ? ? ? invoke DispatchMessage, ADDR msg?
? ? ? ? .endw?
? ? ? ? mov ? ? eax,msg.wParam ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ret?
WinMain endp?
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM ?
? ? ? ? LOCAL ? @DEFAULT_GUI_FONT,@OLD_DEFAULT_GUI_FONT
? ? ? ? LOCAL ? @szBuffer[256]:byte
? ? ? ? LOCAL ? @szBuffer01[256]:byte
? ? ? ??
? ? ? ? .if uMsg == WM_CREATE ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szCheckTitle, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_GROUPBOX,10,10,220,105,hWnd,NULL,NULL,NULL ? ? ? ? ? ? ? ? ? ? ?;創建組框控件 ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hID_GROUP,eax ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szCheckTitle01, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_AUTORADIOBUTTON,20,30,200,25,hWnd,ID_CHECK01,NULL,NULL ? ? ? ?;創建單選框控件 ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hID_CHECK01,eax ??
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szCheckTitle02, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_AUTORADIOBUTTON,20,55,200,25,hWnd,ID_CHECK02,NULL,NULL ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hID_CHECK02,eax ??
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szCheckTitle03, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_AUTORADIOBUTTON,20,80,200,25,hWnd,ID_CHECK03,NULL,NULL ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hID_CHECK03,eax ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle01, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ? ,20,140,200,25,hWnd,IDB01,NULL,NULL ? ? ? ? ? ;創建按鈕控件 ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hIDB01,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle02, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,180,200,25,hWnd,IDB02,NULL,NULL ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hIDB02,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle03, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,220,200,25,hWnd,IDB03,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hIDB03,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle04, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,260,200,25,hWnd,IDB04,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hIDB04,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?GetStockObject,DEFAULT_GUI_FONT ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?;調用GetStockObject函數,得到系統默認字體 ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov @DEFAULT_GUI_FONT,eax ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hID_GROUP,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ? ;發送WM_SETFONT消息,設置控件的字體 ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hID_CHECK01,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?SendMessage,hID_CHECK02,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE?
? ? ? ? ? ? ? ? invoke ?SendMessage,hID_CHECK03,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ??
? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?SendMessage,hIDB01,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hIDB02,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hIDB03,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hIDB04,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?DeleteObject,@DEFAULT_GUI_FONT ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?;刪除本程序新建的字體

? ? ? ? ? ? ? ? invoke ? ?CheckDlgButton,hWnd,ID_CHECK02,BST_CHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ?;可以先初始化讓哪個處于選定狀態,初定為第2項?
? ? ? ? .elseif uMsg == WM_COMMAND ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov eax,wParam ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? .if lParam != 0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? mov edx,wParam ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? shr edx,16 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .if ax == IDB01 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke IsDlgButtonChecked,hWnd,ID_CHECK01 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ;檢查第1項是否選中 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .if eax == BST_CHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?;如果選中,則彈出提示 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,NULL,addr szChecked01,addr szTitle,MB_OK ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .endif ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke IsDlgButtonChecked,hWnd,ID_CHECK02 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .if eax == BST_CHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,NULL,addr szChecked02,addr szTitle,MB_OK ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .endif ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke IsDlgButtonChecked,hWnd,ID_CHECK03 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .if eax == BST_CHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,NULL,addr szChecked03,addr szTitle,MB_OK ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .endif ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .elseif ax == IDB02 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK01,BST_UNCHECKED ? ? ? ? ? ? ? ? ? ?;讓3項都未選中 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK02,BST_UNCHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK03,BST_UNCHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .elseif ax == IDB03 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK03,BST_CHECKED ? ? ? ? ? ? ? ? ? ? ?;選中第3項 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK01,BST_UNCHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke ?CheckDlgButton,hWnd,ID_CHECK02,BST_UNCHECKED ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .elseif ax == IDB04 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke GetDlgItemText,hWnd,ID_CHECK01,addr @szBuffer,sizeof @szBuffer ? ;得到第1項的名稱 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,hWnd,addr @szBuffer,addr szTitle,MB_OK or MB_ICONINFORMATION ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? .endif ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? .endif ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? .endif ??
? ? ? ? .elseif uMsg==WM_DESTROY ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke PostQuitMessage,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? .else?
? ? ? ? ? ? ? ? invoke DefWindowProc,hWnd,uMsg,wParam,lParam ? ? ? ? ? ??
? ? ? ? ret?
? ? .endif?
? ? xor eax,eax?
? ? ret?
WndProc endp?
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
end start ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/66051.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/66051.shtml
英文地址,請注明出處:http://en.pswp.cn/web/66051.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從transformer到informer

Transformer和Informer都是深度學習領域中的模型架構,它們主要用于處理序列數據,如自然語言處理(NLP)和時間序列預測任務。 **Transformer**: Transformer模型最初在2017年由Google的研究者提出,它在NLP領…

hive知識體系

hive知識體系 hive知識體系 鏈接: 1Hive概覽 鏈接: 2Hive表類型 鏈接: 3Hive數據抽樣 鏈接: 4Hive計算引擎 鏈接: 5Hive存儲與壓縮 鏈接: 6Hive Sql 大全 鏈接: 6Hive Sql 大全-Hive 函數 鏈接: 6Hive Sql 大全-窗口函數 鏈接: 7Hive執行計劃 鏈接: 8Hive SQL底層執行原理 鏈接…

優化 Azure Synapse Dedicated SQL Pool中的 SQL 執行性能的經驗方法

在 Azure Synapse Dedicated SQL Pool中優化 SQL 執行涉及了解底層體系結構(例如分布和分區)、查詢優化(例如避免不必要的子查詢和聯接),以及利用具體化視圖和 PolyBase 等工具進行高效數據加載。 1.有效使用分布和分…

個人主頁搭建全流程(Nginx部署+SSL配置+DCDN加速)

前言 最近開始準備秋招,打算做一個個人主頁,以便在秋招市場上更有競爭力。 目前,現有的一些搭建主頁的博文教程存在以下一些問題: 使用Github Page進行部署,這在國內訪問容易受阻使用寶塔面板等框架,功能…

Spring MVC簡單數據綁定

【圖書介紹】《SpringSpring MVCMyBatis從零開始學(視頻教學版)(第3版)》_springspringmvcmybatis從零開始 代碼、課件、教學視頻與相關軟件包下載-CSDN博客 《SpringSpring MVCMyBatis從零開始學(視頻教學版)(第3版&…

嵌入式系統Linux實時化(四)Xenomai應用開發測試

1、Xenomai 原生API 任務管理 Xenomai 本身提供的一系列多任務調度機制,主要有以下一些函數: int rt_task_create (RT_TASK task, const char name, int stksize, int prio, intmode) ; 任務的創建;int rt_task_start(RT_TASK task, void(entry)(void cookie), void cookie…

如何在Ubuntu上安裝和配置Git

版本控制系統(VCS)是軟件開發過程中不可或缺的工具之一,它幫助開發者跟蹤代碼變更、協作開發以及管理不同版本的項目。Git作為當前最流行的分布式版本控制系統,因其高效性和靈活性而廣受青睞。本文將指導你如何在Ubuntu操作系統上…

[python] bisect_right

等價于C中的upper_bound bisect_right 函數介紹 在Python的 bisect 模塊中, bisect_right (別名 bisect )用于在有序序列中查找插入點。插入點是在序列中插入元素后,序列仍保持有序的位置。 bisect_right 函數返回的插入點是在已…

Mac上安裝Label Studio

在Mac上安裝Anaconda并隨后安裝Label Studio,可以按照以下步驟進行: 1. 在Mac上安裝Anaconda 首先,你需要從Anaconda的官方網站下載適用于Mac的安裝程序。訪問Anaconda官網,點擊“Download Anaconda”按鈕,選擇適合M…

vscode開啟調試模式,結合Delve調試器調試golang項目詳細步驟

1.前期準備 (1).在vs code中的擴展程序中搜索并安裝Go擴展程序 (2).安裝 Delve 調試器 go install github.com/go-delve/delve/cmd/dlvlatest (3).打開vs code的命令面板,輸入Go: Install/Update Tools,并單擊該命令執行,安裝或更新Go語…

SQL面試題1:連續登陸問題

引言 場景介紹: 許多互聯網平臺為了提高用戶的參與度和忠誠度,會推出各種連續登錄獎勵機制。例如,游戲平臺會給連續登錄的玩家發放游戲道具、金幣等獎勵;學習類 APP 會為連續登錄學習的用戶提供積分,積分可兌換課程或…

爬山算法與模擬退火算法的全方面比較

一、基本概念與原理 1. 爬山算法 爬山算法是一種基于啟發式的局部搜索算法,通過不斷地向當前解的鄰域中搜索更優解來逼近全局最優解。它的核心思想是,從當前解出發,在鄰域內找到一個使目標函數值更大(或更小)的解作為新的當前解,直到找不到更優的解為止。 2.模擬退火算…

PostgreSQL 超級管理員詳解

1. 什么是 PostgreSQL 超級管理員 PostgreSQL 超級管理員(superuser)是擁有數據庫系統最高權限的用戶。他們可以執行任何數據庫操作,包括但不限于創建和刪除數據庫、用戶、表空間、模式等。超級管理員權限是 PostgreSQL 中權限的最高級別。 …

安裝本地測試安裝apache-doris

一、安裝前規劃 我的服務器是三臺麒麟服務器,2臺跑不起來,這是我本地的,內存分配的也不多。 fe192.168.1.13 主數據庫端口9030訪問 8Gbe192.168.1.13內存4G 硬盤50be192.168.1.14內存4G 硬盤50be192.168.1.12內存4G 硬盤5013同時安裝的fe和be 。 原理:192.168.1.13 服…

GPT(General Purpose Timer)定時器

基本概念: 在嵌入式系統中,General Purpose Timer(GPT)是一種非常重要的硬件組件,用于提供定時功能。 定義:通用定時器是一種能夠提供精確時間測量和控制功能的電子設備或電路模塊。它可以產生周期性的時…

集中式架構vs分布式架構

一、集中式架構 如何準確理解集中式架構 1. 集中式架構的定義 集中式架構是一種將系統的所有計算、存儲、數據處理和控制邏輯集中在一個或少數幾個節點上運行的架構模式。這些中央節點(服務器或主機)作為系統的核心,負責處理所有用戶請求和…

數據挖掘實訓:天氣數據分析與機器學習模型構建

隨著氣候變化對各行各業的影響日益加劇,精準的天氣預測已經變得尤為重要。降雨預測在日常生活中尤其關鍵,例如農業、交通和災害預警等領域。本文將通過機器學習方法,利用歷史天氣數據預測明天是否會下雨,具體內容包括數據預處理、…

kalilinux - 目錄掃描之dirsearch

情景導入 先簡單介紹一下dirsearch有啥用。 假如你現在訪問一個網站,例如https://www.example.com/ 它是一個電商平臺或者其他功能性質的平臺。 站在開發者的角度上思考,我們只指導https://www.example.com/ 但不知道它下面有什么文件,文…

關于 ThinkPHP 與 PostgreSQL 結合使用的一些要點

ThinkPHP 是一款流行的 PHP 開發框架,而 PostgreSQL 是功能強大的開源關系型數據庫。它們可以結合使用來開發各類應用,以下是關于 ThinkPHP 與 PostgreSQL 結合使用的一些要點: 配置數據庫連接 編輯配置文件:在 ThinkPHP 項目中&…

進程同步之信號量機制

信號量機制 信號量機制是一種用于進程同步和互斥的基本工具,特別是在并發編程中,廣泛用于控制對共享資源的訪問,避免數據競爭和死鎖等問題。信號量機制由荷蘭計算機科學家Edsger Dijkstra在1965年提出,并在操作系統的進程同步中發…