發表文章

目前顯示的是 3月, 2021的文章

[筆記] 確認 exe、dll 是 x64 還是 x86

圖片
 可以使用一個很實用的工具 dependency walker,可以先搜尋看看安裝 visual studio 是否有此工具,應該是專業版才有,沒有的話可以使用以下網址下載 https://www.dependencywalker.com/ 開啟 x64 的 dependency walker 接著將所要測試的 exe 拉至視窗內(這邊舉例用 x86 的 depend.dll 可以看到 cpu 的欄位標示 x86 dll  是 x64 的話,就會在 cpu 欄位顯示 x64

[筆記] 批次檔的應用 - visual studio 編譯

 透過批次檔直接編譯 visual studio,省去開啟 visual studio 的時間 可直接用命令提示字元在批次檔位置輸入批次檔檔名執行程式 批次檔範例程式碼如下 @echo off set CONFIG = Release set BUILD = rebuild set ROOT = %~dp0 set PRG = %ROOT%src\ call :%1 %2 if errorlevel 1(     echo Call error      exit /b 0 ) cd %ROOT% echo Process is finished exit /b 1 :all call :prg x86 if errorlevel 1 exit /b call :prg x64 if errorlevel 1 exit /b :prg cd %PRG devenv test.vcproj /%BUILD% "%CONFIG%|%1" if errorlevel 1 exit /b 1

飲食知識

圖片
 「每日飲食指南」將食物分為六大類: 1. 全榖雜糧類: 人類重要的熱量來源之一,通常富含澱粉,應多選擇 未精製 全榖雜糧。 米麥類( 糙米、胚芽米、薏仁、燕麥、黑麥、萵麥、小麥、大麥、玉米、小米 ) 澱粉根莖類( 番薯、馬鈴薯、芋頭、南瓜、山藥、蓮藕 ) 豆類果實( 紅豆、綠豆、花豆、蠶豆、皇帝豆、栗子、蓮子、菱角、南瓜 ) 過度加工精緻穀類、製品常加入大量的糖和油脂,容易吃進大量熱量,應多注意 米糕、米果、旺旺、炸鍋巴、白麵包、餅乾、蛋糕、油條、派、披薩、糖果、甜飲料 2. 豆魚蛋肉類: 人類攝取蛋白質的主要來源,為預防慢性疾病,應該盡量選擇植物性、脂肪含量較低的,並避免油炸和過度加工的蛋白質食品。 豆:  提供豐富植物性蛋白質的黃豆及黃豆製品。 魚:  含有豐富的動物性蛋白質,但脂肪含量平均較肉類低,且其脂肪酸之比例較肉類為健康。 紅色肉質的魚在腹部肌肉所含的脂肪量較高。 白色肉質魚肉、蝦類、貝類、頭足類(如烏賊、章魚)的脂肪量較低。 深海魚油含豐富的N3脂肪酸,有防止慢性病、促進血液循環、減少發炎反應、抗憂鬱等多重功能。 肉: 應適量選較瘦的肉,避免飽和脂肪酸,其對心血管健康不利 蛋:  有豐富的蛋白質、礦物質,但蛋黃含有膽固醇,血液中膽固醇高時會有血脂疾病, 建議一周不要攝取超過三個蛋黃 高鈣豆製品(傳統豆腐、小方豆干、素雞、五香豆干、臭豆腐) 3. 乳品類: 人類攝取鈣質最重要的來源,乳品類含有蛋白質、乳糖、脂肪、維生素、礦物質等營養素,營養價值相當高,應多選擇 低脂 或 脫脂 鮮奶、奶粉、乳酪、優酪乳。 乳品類一般指的是哺乳動物的乳汁或乳製品,包括 牛乳、羊乳、優酪乳、起司、優格 等。 4. 蔬菜類: 含有豐富的維生素、礦物質、膳食纖維等。蔬菜類的膳食纖維能夠有效的幫助排便、維持腸道健康。 高鈣深色蔬菜 地瓜葉、小白菜、青江菜、菠菜、芥藍菜、白莧菜、芹菜、油菜、紅鳳菜、山芹菜、龍葵(黑甜菜)、紅莧菜、山茼蒿(昭和草)、有機石蓮花、千寶菜(冬菜)、荷葉白菜、川七、豆瓣菜 5. 水果類: 人類補充維生素C不可或缺的來源,水果的外皮則含有膳食纖維,可以預防便祕、大腸癌等疾病。 較多鐵質的水果( 桃、李、葡萄、桑葚、草莓、黑棗、葡萄乾、黑棗乾 ) 適量鈣質的水果( 橙、草莓 ) 6. 油脂與堅果種子類: 含有豐富的脂肪。 植物油(花生油、黃豆油、葵花油、芝麻

步進馬達與伺服馬達介紹與差異

圖片
伺服馬達(Servo motor) 透過編碼器(encoder)回饋訊號控制,採用 閉迴路系統 可進行位置定位控制和動作速度控制 通常有三個部分:伺服馬達、速度迴路驅動器、位置迴路控制器 有直流、交流兩種 直流(DC)伺服馬達 有刷,操作容易,但電樞線圈會發熱(散熱問題) 旋轉方向由電流決定 旋轉速度由電壓決定 交流(AC)伺服馬達 電樞線圈置於馬達外層(散熱佳) 會使用變頻器,透過改變電源頻率,讓感應馬達變化旋轉速度 無刷,可分為兩類: 同步馬達、感應馬達 -同步馬達 轉子使用永久磁鐵代替繞線 -感應馬達(異步馬達) 定子線圈透過電磁感應使轉子產生電流,進而使馬達產生力矩 按轉子繞組方式分為繞線式、鼠籠式 繞道式:均為三相 鼠籠式:有單相也有三相 步進馬達(Step motor) 無刷直流馬達的一種 定子跟轉子具有相契合的小齒,透過切換流向定子線圈中的電流,以一定角度轉動 採用 開迴路控制 ,依比例隨脈衝信號轉動,達到位置和速度控制,穩定性佳   通常有三個部分:步進馬達、控制器、驅動器 比較

[筆記] 批次檔的應用 - 複製檔案

 寫程式上班日常最常的動作就是需要不同專案所編譯的檔案 以下範例是複製檔案的批次檔程式碼 echo off set CONFIG = Release set SRC_FILE= D:\test1\CONFIG\ set  DIR_FILE=D:\test2\CONFIG\ set  FILE_NAME=test.txt echo Copy file process is starting copy %SRC_FILE% %FILE_NAME% %DIR_FILE% if errorlevel 1(     echo "copy error"     exit /b 1 ) echo Copy file process is finished pause

[筆記] command 命令提示字元 使用方式

 使用命令提示字元,透過打字的方式來執行電腦的動作 C槽切換成D槽 d: cd( change directory) cd xxx: 變更當前位置至 xxx cd\: 回到根目錄 cd .. : 前往前一個目錄 md( make directory) md xxx: 在當前目錄產生 xxx 資料夾 rd( remark directory) rd xxx: 在當前目錄刪除 xxx 資料夾 dir dir: 顯示目前目錄的檔案 dir /a: 顯示目前目錄的檔案,把隱藏檔也顯示出來 dir /?: 查看 dir 連接的指令 dir /od: 顯示檔案並按造日期時間排列 dir /s/p/w: 顯示所有子目錄檔案(/s),分頁顯示(/p),橫列顯示(/w) dir *.cpp : 搜尋當前目錄所有副檔名為 .cpp 的檔案 dir *.cpp /s: 搜尋當前目錄所有副檔名為 .cpp 的檔案(包含子目錄)

[筆記] 一般表示式 regular expression 使用方式

 一般表示式目前所知是用在 快速搜索 文字,運用在 visual studio 可以快速找到對應的程式碼 ^abc: abc 在字串的頭 ex: abcd abc$: abc 在字串的尾 ex: dabc ab*c: b*表示有 0 個或多個 b ex: abbbc、ac ab+c: b+表示有 1 個或多個b ex: abbc abc\*: 搜尋特定符號用\ ex: abc* abc\\: 搜尋特定符號用\ ex: abc\ ._id: 匹配換行符號以外的單一字元 ex: card_id、user_id

[筆記] Visual Studio C++ 遠端 Debug

圖片
最近因為工作需要使用到遠端 debug 下班來研究一下怎麼用,感覺應該是蠻實用的技能。  遠端電腦 1. 在遠端電腦下載遠端工具 https://docs.microsoft.com/zh-tw/visualstudio/debugger/remote-debugging-cpp?view=vs-2019 下載後安裝檔案 之後可以找到 Remote Debugger 資料夾下有 msvsmon.exe 2. 開啟 msvsmon.exe 第一次設定會跳出以下視窗 設定完成後會開啟以下視窗 並在上方選單 "工具" 選擇 "選項" 確定後畫面如下 3. 確認要執行 debug 的 exe 檔案位置,後續會用到 本機電腦 1. Visual Studio 開啟要 Debug 專案 2. 進入專案屬性 "要啟動的偵錯工具" 選擇 "遠端windows偵錯工具" 工作目錄 設定 遠端應用程式的位置 遠端伺服器名稱 設定 遠端電腦 ip 連接 我這邊是設定未使用驗證,在公司用的話可能要設定驗證 想要確認遠端電腦的 ip  可使用 命令提示字元 輸入 ipconfig 找到 ipv4位址的內容 最後運行程式即能 debug 遠端電腦的應用程式 遠端電腦畫面 本機電腦畫面 看了網路上的方法,摸了一陣才試出來,希望有幫助到其他人