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 ? ? ? ? ? ? ?;按鈕類名
szListBoxClassName ?db "LISTBOX",0 ? ? ? ? ? ? ;列表框類名 ? ? ??

szTitle ? ? ? ? ? ? db "提示",0?
szCheckTitle ? ? ? ?db "只能選一位",0
szAddLib01 ? ? ? ? ?db "劉備",0?
szAddLib02 ? ? ? ? ?db "關羽",0?
szAddLib03 ? ? ? ? ?db "張飛",0?
szAddLib04 ? ? ? ? ?db "孫策",0
szAddLib05 ? ? ? ? ?db "呂布",0

szFormat ? ? ? ? ? ?db?? ?'總項數是 %d',0

szButtonTitle01 ? ? db "新增孫策",0?
szButtonTitle02 ? ? db "刪除選中項",0
szButtonTitle03 ? ? db "將呂布插入第2項",0?
szButtonTitle04 ? ? db "得到總項數",0?
szButtonTitle05 ? ? db "得到選中項的名稱",0

.DATA? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
hInstance ? ?HINSTANCE ? ? ? ? ? ? ? ? ? ?
CommandLine ?LPSTR ? ? ? ? ?
hID_GROUP ? ?HWND ? ? ? ?? ? ? ;組框控件句柄 ? ? ? ? ? ? ? ?
hListBox01 ? HWND ? ? ? ?? ? ? ;列表框控件句柄變量?

hButton01 ? ?HWND ? ? ? ?? ? ? ;按鈕控件句柄變量 ?
hButton02 ? ?HWND ? ? ? ?? ??
hButton03 ? ?HWND ? ? ? ???
hButton04 ? ?HWND ? ? ? ??
hButton05 ? ?HWND ? ? ? ?? ??

.const
; Equ 等值定義
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
IDC_LBO1 ? ? equ 10 ? ? ? ?;列表框控件標識符?

ButtonID01 ? equ 11 ? ? ? ?;按鈕控件標識符?
ButtonID02 ? equ 12 ?
ButtonID03 ? equ 13 ?
ButtonID04 ? equ 14
ButtonID05 ? equ 15 ??
.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_OVERLAPPEDWINDOW,100,100,260,370, 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?
? ? ? ? .if uMsg == WM_CREATE
? ? ? ? ? ? ? ? invoke ?GetStockObject,DEFAULT_GUI_FONT?
? ? ? ? ? ? ? ? mov @DEFAULT_GUI_FONT,eax
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szCheckTitle, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_GROUPBOX,10,5,220,125,hWnd,NULL,NULL,NULL ? ? ?;創建組框控件 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? mov hID_GROUP,eax ?
? ? ? ? ? ? ? ? mov hID_GROUP,eax
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szListBoxClassName,NULL, WS_BORDER + WS_CHILDWINDOW + WS_VISIBLE + WS_TABSTOP ?,20,20,200,100,hWnd,IDC_LBO1,NULL,NULL ? ? ? ? ? ;創建列表框 ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? mov hListBox01,eax
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle01, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,150,200,25,hWnd,ButtonID01,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hButton01,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle02, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,190,200,25,hWnd,ButtonID02,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hButton02,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle03, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,220,200,25,hWnd,ButtonID03,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hButton03,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle04, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,250,200,25,hWnd,ButtonID04,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hButton04,eax ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke CreateWindowEx,NULL,ADDR szButtonClassName,ADDR szButtonTitle05, WS_TABSTOP OR ?WS_VISIBLE OR WS_CHILD OR BS_DEFPUSHBUTTON ?,20,280,200,25,hWnd,ButtonID05,NULL,NULL ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov hButton05,eax
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?SendMessage,hID_GROUP,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?SendMessage,hListBox01,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE?
? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? invoke ?SendMessage,hButton01,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ? ? ? ? ? ? ? ;設置按鈕控件的字體 ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hButton02,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hButton03,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hButton04,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke ?SendMessage,hButton05,WM_SETFONT,@DEFAULT_GUI_FONT,TRUE?

? ? ? ? ? ? ? ? invoke ?DeleteObject,@DEFAULT_GUI_FONT ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?;刪除本程序新建的字體?
? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? invoke?? ?SendDlgItemMessage,hWnd,IDC_LBO1,LB_ADDSTRING,0,addr szAddLib01
? ? ? ? ? ? ? ? invoke ?SendDlgItemMessage,hWnd,IDC_LBO1,LB_SETCURSEL,0,0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ;設置為焦點項
? ? ? ? ? ? ? ? invoke?? ?SendDlgItemMessage,hWnd,IDC_LBO1,LB_ADDSTRING,0,addr szAddLib02
? ? ? ? ? ? ? ? invoke?? ?SendDlgItemMessage,hWnd,IDC_LBO1,LB_ADDSTRING,0,addr szAddLib03
? ? ? ? .elseif uMsg == WM_COMMAND ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? mov eax,wParam
? ? ? ? ? ? ? ? mov edx,wParam ? ? ? ??
? ? ? ? ? ? ? ? shr edx,16
? ? ? ? ? ? ? ? .if ax == ButtonID01
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendDlgItemMessage,hWnd,IDC_LBO1,LB_ADDSTRING,0,addr szAddLib04 ? ? ?;從后面增加新項
? ? ? ? ? ? ? ? ? ? ? ? .endif
? ? ? ? ? ? ? ? .elseif ax == ButtonID02?
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke GetDlgItem,hWnd,IDC_LBO1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ;得到列表控件的句柄
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendMessage,eax,LB_GETCURSEL,0,0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ;得到當前選中項的索引,從0開始
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendDlgItemMessage,hWnd,IDC_LBO1,LB_DELETESTRING,eax,0 ? ? ? ? ? ? ? ;刪除指定項,eax是焦點項?
? ? ? ? ? ? ? ? ? ? ? ? .endif
? ? ? ? ? ? ? ? .elseif ax == ButtonID03?
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendDlgItemMessage,hWnd,IDC_LBO1,LB_INSERTSTRING,1,addr szAddLib05 ? ;插入某項,索引從0開始,1就是第2項
? ? ? ? ? ? ? ? ? ? ? ? .endif?
? ? ? ? ? ? ? ? .elseif ax == ButtonID04?
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendDlgItemMessage,hWnd,IDC_LBO1,LB_GETCOUNT,0,0 ? ? ? ? ? ? ? ? ? ? ;獲取總項數
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke wsprintf,addr @szBuffer,addr szFormat,eax ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,hWnd,addr @szBuffer,addr szTitle,MB_OK or MB_ICONINFORMATION ?

? ? ? ? ? ? ? ? ? ? ? ? .endif ?? ?
? ? ? ? ? ? ? ? .elseif ax == ButtonID05?
? ? ? ? ? ? ? ? ? ? ? ? .if dx == BN_CLICKED
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke GetDlgItem,hWnd,IDC_LBO1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendMessage,eax,LB_GETCURSEL,0,0?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? mov ebx,eax ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke SendDlgItemMessage,hWnd,IDC_LBO1,LB_GETTEXT,ebx,addr @szBuffer ? ? ? ;addr前不能使用eax,所以用ebx轉一下 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? invoke MessageBox,hWnd,addr @szBuffer,addr szTitle,MB_OK or MB_ICONINFORMATION ?
? ? ? ? ? ? ? ? ? ? ? ? .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/66403.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/66403.shtml
英文地址,請注明出處:http://en.pswp.cn/web/66403.shtml

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

相關文章

【機器學習實戰入門】使用LSTM機器學習預測股票價格

機器學習在股票價格預測中有重要的應用。在這個機器學習項目中,我們將討論如何預測股票的收益。這是一個非常復雜的任務,充滿了不確定性。我們將會把這個項目分成兩部分進行開發: 首先,我們將學習如何使用 LSTM 神經網絡預測股票…

【編程語言】C/C++語言常見標準和規范

C/C 是兩種功能強大且廣泛使用的編程語言。盡管它們沒有像 Java 那樣強制性的命名規則,但為了提高代碼的可讀性和可維護性,遵循一些普遍認同的編程規范和標準仍然是非常重要的。本文將探討 C/C 編程中的一些命名規范及標準,以幫助開發者編寫更…

使用C語言實現棧的插入、刪除和排序操作

棧是一種后進先出(LIFO, Last In First Out)的數據結構,這意味著最后插入的元素最先被刪除。在C語言中,我們可以通過數組或鏈表來實現棧。本文將使用數組來實現一個簡單的棧,并提供插入(push)、刪除(pop)以及排序(這里采用一種簡單的排序方法,例如冒泡排序)的操作示…

08、如何預防SQL注入

目錄 1、分析及其存在哪些危險 2、預防SQL注入 1、分析及其存在哪些危險 原理: SQL 注入是一種常見的網絡攻擊手段,攻擊者通過在用戶輸入中插入惡意的 SQL 語句,利用程序對用戶輸入處理不當的漏洞,使惡意 SQL 語句被數據庫服務器執行。 通常發生在應用程序將用戶輸入直接拼…

【爬蟲】使用 Scrapy 框架爬取豆瓣電影 Top 250 數據的完整教程

前言 在大數據和網絡爬蟲領域,Scrapy 是一個功能強大且廣泛使用的開源爬蟲框架。它能夠幫助我們快速地構建爬蟲項目,并高效地從各種網站中提取數據。在本篇文章中,我將帶大家從零開始使用 Scrapy 框架,構建一個簡單的爬蟲項目&am…

1.11 思維樹(Tree-of-Thoughts, ToT):續寫佳話

思維樹(Tree-of-Thoughts, ToT):續寫佳話 人工智能在推理和決策方面的突破,越來越依賴于模型能夠以更高效、更靈活的方式進行推理。與傳統的順序性推理方法不同,**思維樹(Tree-of-Thoughts,ToT)**提供了一種基于樹狀結構的推理方式,鼓勵模型從多個角度進行探索,并在…

NVIDIA 下 基于Ubuntun20.04下 使用腳本安裝 ros2-foxy 和 使用docker安裝 ros2-foxy

一、前提介紹: 本文主要采用兩種方式在NVIDIA 下基于 Ubuntun20.04安裝 ros2-foxy。 使用環境: NVIDIA 為 Jetson 系列下 Jetson Xavier NX; Ubuntun版本:20.04 二、安裝方法: 1、使用腳本編譯方式: 使…

wx030基于springboot+vue+uniapp的養老院系統小程序

開發語言:Java框架:springbootuniappJDK版本:JDK1.8服務器:tomcat7數據庫:mysql 5.7(一定要5.7版本)數據庫工具:Navicat11開發軟件:eclipse/myeclipse/ideaMaven包&#…

【人工智能】Python中的自動化機器學習(AutoML):如何使用TPOT優化模型選擇

《Python OpenCV從菜鳥到高手》帶你進入圖像處理與計算機視覺的大門! 解鎖Python編程的無限可能:《奇妙的Python》帶你漫游代碼世界 隨著機器學習在各行業的廣泛應用,模型選擇和優化成為了數據科學家面臨的主要挑戰之一。自動化機器學習&am…

計算機網絡常見協議

目錄 OSPF(Open Shortest Path First) NAT(Network Address Translation) ICMP (Internet Control Message Protocol) HTTPS(SSL/TLS加密) HTTPS協議 1. 對稱加密 2. 非對稱加密 3. 證書驗證 4. 回顧https協議傳輸流程 HTTP TCP UDP 1. TCP&a…

1.7 ChatGPT:引領AI對話革命的致勝之道

ChatGPT:引領AI對話革命的致勝之道 隨著人工智能(AI)技術的迅猛發展,特別是在自然語言處理(NLP)領域,OpenAI 的 ChatGPT 已經成為了舉世矚目的技術突破。從普通的自動化客服到深入的創作與協作,ChatGPT 通過其卓越的語言理解和生成能力,改變了人們與計算機交互的方式…

靜態綜合路由實驗

實驗拓撲 實驗要求 1.除R5的環回地址外,整個其他所有網段基于192.168.1.0/24進行合理的IP地址劃分 2.R1-R4每個路由器存在兩個環回接口,用于模擬pc網段;地址也在192.168.1.0/24這個網絡范圍內 3.R1-R4上不能直接編寫到達5.5.5.0/24的靜態路由…

腳本工具:PYTHON

Python 是一種高級編程語言,以其簡潔清晰的語法和強大的功能被廣泛應用于各種領域,包括自動化腳本編寫、數據分析、機器學習、Web開發等。以下是一些關于使用 Python 編寫腳本工具的基本介紹、常用庫以及一些實用技巧總結。 這里寫目錄標題 基礎知識安裝…

左神算法基礎提升--4

文章目錄 樹形dp問題Morris遍歷 樹形dp問題 求解這個問題需要用到我們在基礎班上學到的從節點的左子樹和右子樹上拿信息的方法。 求最大距離主要分為兩種情況:1.當前節點參與最大距離的求解;2.當前節點不參與最大距離的求解; 1.當前節點參與最…

nuiapp在APP中的.nvue頁面中使用webview展示空白的問題

在打包的APP中發現webview打開顯示空白 最后發現是高度問題 最后給style設置動態高度&#xff1a; <web-view ref"webview" :style"viewStyle" allow :fullscreen"true" :webview-styles"webviewStyles" :src"UrlLink"…

[計算機網絡]一. 計算機網絡概論第一部分

作者申明&#xff1a;作者所有文章借助了各個渠道的圖片視頻以及資料&#xff0c;在此致謝。作者所有文章不用于盈利&#xff0c;只是用于個人學習。 1.0推薦動畫 【網絡】半小時看懂<計算機網絡>_嗶哩嗶哩_bilibili 1.1計算機網絡在信息時代的作用 在當今信息時代&…

神經網絡常見操作(卷積)輸入輸出

卷積 dimd的tensor可以進行torch.nn.Convnd(in_channels,out_channels),其中nd-1,d-2對于torch.nn.Convnd(in_channels,out_channels)&#xff0c;改變的是tensor的倒數n1維的大小 全連接 使用torch.nn.Linear(in_features,out_features,bias)實現YXWT b,其中X 的形狀為 (ba…

【C++】如何從源代碼編譯紅色警戒2地圖編輯器

【C】如何從源代碼編譯紅色警戒2地圖編輯器 操作視頻視頻中的代碼不需要下載三方庫&#xff0c;已經包含三方庫。 一、運行效果&#xff1a;二、源代碼來源及編程語言&#xff1a;三、環境搭建&#xff1a;安裝紅警2安裝VS2022下載代碼&#xff0c;源代碼其實不太多&#xff0c…

SSM課設-酒店管理系統功能設計

【課設者】SSM課設-酒店管理系統 分為用戶端管理員端 技術棧: 后端: Spring Spring MVC MyBatis Mysql JSP 前端: HtmlCssJavaScriptAjax 功能: 用戶端主要功能包括&#xff1a; 登錄注冊 客房預訂 客房評論 首頁 管理員端主要功能包括&#xff1a; 會員信息管理 客房信息…

Redis 數據存儲類型

Redis 支持多種類型的數據存儲&#xff0c;每種類型都可以用于不同的場景和需求。下面是 Redis 支持的主要數據存儲類型&#xff1a; 1. String&#xff08;字符串&#xff09; 類型簡介&#xff1a;字符串是 Redis 中最簡單的數據類型&#xff0c;可以包含任何數據&#xff…