2018年4月28日 星期六

資料夾 勾選 全部子資料夾變成項目,怎麼恢復讓他自己根據檔案自己選項目

資料夾 勾選 全部子資料夾變成項目,怎麼恢復讓他自己根據檔案自己選項目

在資料夾右鍵
內容->自訂->最佳化此資料夾->假設設定成影片
可以打勾同時套用所有子資料夾,導致所有資料夾都是大圖示顯示,有非影片的資料夾也變成大圖示了,如何恢復成自己適應變成適合的顯示模式。
對著母資料夾
改成->任一個+打勾套用所有子資料夾
然後再改回來任一個項目(不要跟剛剛一樣的舉例來說變回一般項目)
然後取消同時套用所有子資料夾
再來就會恢復了,子資料自己會依照裡面的檔案是什麼自己變成適當的顯示方式

2018年4月24日 星期二

Visual Studio 2017 上傳到 github 中文是亂碼

Visual Studio 2017 上傳到 github 中文是亂碼

主要的問題是 Visual Studio 2017 使用 Big5 儲存而 Git 使用 UTF-8,只要把她修正儲存的時候存成 UTF-8 即可。
Visual Studio 2017 內建有功能可以直接Big5 轉 UTF-8,只是預設清單上沒有這個功能選項被隱藏了需要手動開出來,功能名字是進階儲存選項
工具->自訂
命令 -> 加入新命令 -> 檔案 -> 進階儲存選項
這樣就可以在檔案內看到了
選擇檔案之後選中這個即可
之後重新提交上傳到 Github

2018年4月22日 星期日

PowerShell 第一次使用需開啟功能

PowerShell 第一次使用需開啟功能

第一次使用需要開啟功能,使用 Win+X,然後按一下a
開啟 PowerShell 視窗,然後輸入
Set-ExecutionPolicy RemoteSigned
然後 輸入 Y 按下 enter 開啟 PowerShell 的功能

2018年4月20日 星期五

makefile 通配符,獲取目錄下的所有檔案名稱

makefile 通配符,獲取目錄下的所有檔案名稱

通配符

有3個可以使用的指定通配符
## wildcard 
# 獲取指定副檔名名稱
SRC=$(wildcard *.cpp)
# 如果要獲得子目錄就在前面加上
SRC=$(wildcard ./dir/*.cpp)
# 如果有多個子目錄
SRC=$(wildcard ./dir1/*.cpp ./dir2/*.cpp)

## notdir
# 去除目錄名稱僅保留檔案名稱
Src2=$(notdir $(SRC))

## patsubst
# 更改 *.cpp 名稱為 *.o
OBJ:=$(patsubst %.cpp,%.o,$(Src2))

參考

2018年4月16日 星期一

泊松混合與拉普拉斯金字塔混合,縫合圖片實作差異

泊松混合與拉普拉斯金字塔混合,縫合圖片實作差異

時間

拉普拉斯:120ms
泊松:428ms

原圖縫合效果

原圖比較
拉普拉斯金字塔
泊松混合

調整亮度後縫合效果

原圖比較
拉普拉斯金字塔混和
泊松混合

2018年4月11日 星期三

PowerShell 批次處理 刪除google雲端硬碟副本下載後產生的副檔名

PowerShell 批次處理 刪除google雲端硬碟副本下載後產生的副檔名

雲端硬碟如果使用建立副本的方式下載就會產生的副本字樣,比如說
原始檔案為
ABC.jpg
產生副本之後
ABC.jpg.jpg 的副本
下載到windwos之後就不能看到預覽圖了也沒辦法直接播放,需要刪除多餘的副檔名

如何刪除副檔名

批次檔案:下載
沒有加殼,可自行查閱代碼,確認安全

使用方法

下載放到你要的資料夾,然後按右鍵用poweshell執行,即可。
資料夾可以不用同一層,預設會自動搜尋3層內的。
第一次使用需要開啟功能,使用 Win+X,然後按一下a
開啟powershell視窗,然後輸入
Set-ExecutionPolicy RemoteSigned
然後 輸入 Y 按下 enter 開啟powershell的功能

2018年4月9日 星期一

為什麼 function 可以 deref 好幾次結果仍相等

為什麼 function 可以 deref 好幾次結果仍相等

簡單解釋來說是存在著隱式轉換把 point 轉換到 function,這樣不管你解參考幾次都會自己轉回來,而參考只能參考一次。

參考

[6.3.2.1-4]
4 Afunction designator is an expression that has function type. Except when it is the operand of the sizeof operator, the _Alignof operator,65) or the unary & operator, a function designator with type ‘‘function returning type’’ is converted to an expression that has type ‘‘pointer to function returning type’’.
[6.5.3.2-1]
The operand of the unary & operator shall be either a function designator, the result of a [] or unary * operator, or an lvalue that designates an object that is not a bit-field and is not declared with the register storage-class specifier.
[6.5.3.2-4]
The unary * operator denotes indirection. If the operand points to a function, the result is a function designator; if it points to an object, the result is an lvalue designating the object.
If the operand has type ‘‘pointer to type’’, the result has type ‘‘type’’. If an invalid value has been assigned to the pointer, the behavior of the unary * operator is undefined.102) Forward references: storage-class specifiers (6.7.1), structure and union specifiers (6.7.2.1).

2018年4月8日 星期日

自排車正確打檔方法

一、排檔桿的按鈕

排檔桿拇指處通常有一顆按鈕,功能是防止誤打檔位。大原則能不按就不要按

主要是為了避免誤操作。舉例來說,從 D 檔推到 N 檔本來不需要按按鈕,如果習慣每次都按著,操錯失誤多推了一格,就會直接進入 R 檔(倒車檔),可能會造成事故。

反過來說如果沒有按,排檔桿會被鎖定機構擋住,停在 N 檔而不會滑進 R 檔,多了一道安全防線,避免誤入R檔。

日常行車最常切換的是 N 檔與 D 檔,這兩個檔位之間的切換完全不需要按按鈕,直接前推或後拉即可。

需要按按鈕的情況

操作 說明
P ↔ 任意檔位 進出 P 檔一律需要按按鈕
N → R 從空檔進入倒車檔需要按按鈕

不需要按按鈕的情況

操作 說明
N ↔ D 空檔與前進檔之間直接推拉即可
R → N 從倒車檔回到空檔不需要按按鈕

二、停紅燈時的操作

自排車在 D 檔或 R 檔時,即使不踩油門,車子也會以很緩慢的速度向前或向後移動(大約是一般人走路的速度),這稱為「怠速蠕行」。因此停紅燈時必須控制車輛不移動,有兩種做法:

  • 方法一:維持 D 檔,持續踩住煞車
  • 方法二:將排檔推到 N 檔(不需要按按鈕),可以放開煞車讓腳休息

綠燈起步時,正確順序是:先拉回 D 檔,再踩油門。避免在 N 檔時先踩油門拉高轉速再推入 D 檔,這樣做會讓變速箱內部的離合器承受額外的衝擊與磨損。偶爾不小心輕踩到一點油門問題不大,但不要刻意拉高轉速。

避免在 N 檔大踩油門讓轉速飆高,然後瞬間推入 D 檔讓車子彈射出去。一般家用車的變速箱不是為這種操作設計的,會快速耗損變速箱。

 

三、斜坡停車的正確打檔順序

在平地停車時,打檔順序的影響不大。但只要有斜坡錯誤的操作順序就可能會傷到變速箱。

變速箱的 P 檔(Parking)雖然具有鎖定車輛的功能,但它的鎖定方式是靠變速箱內部一個叫做「駐車棘爪」的小金屬片卡住齒輪。這個機構的設計強度有限,它的用途是防止車輛被意外推動時擋一下,而不是長時間承受車輛在斜坡上因重力產生的拉力。

如果在斜坡上直接打 P 檔而沒有先拉手煞車,車輛的全部重量都會壓在這個小小的駐車棘爪上,長期下來會導致:

  1. 齒輪與棘爪磨損或斷裂:變速箱維修工時多、費用高
  2. P 檔卡死無法退出:棘爪在受力狀態下被齒輪夾緊,導致排檔桿推不動。雖然硬推可以退出,但每一次硬推都會造成進一步的磨損

正確的熄火停車步驟

  1. 踩住煞車,讓車輛完全靜止
  2. 拉起手煞車
  3. 慢慢放開腳煞車,確認手煞車確實撐住了車輛、沒有滑動
  4. 打入 P 檔
  5. 熄火、下車

手煞車必須比 P 檔先作動。 這樣車輛的重量由手煞車承擔,P 檔的駐車棘爪只是輔助鎖定,不會受力。

正確的上車起步步驟

  1. 上車,踩住煞車
  2. 發動引擎(繼續輕踩著)
  3. 推到 N 檔
  4. 最後才放開手煞車

還沒退出 P 檔前別讓車子滑動了。 如果先放手煞車同時腳也沒踩住剎車,車輛的重量會瞬間壓上駐車棘爪,就跟直接在斜坡打 P 檔一樣了。

 

四、排檔桿旁邊的 Sport 模式按鈕

有些排檔桿旁邊有一顆小按鈕,按下後儀表板會亮起「Sport」字樣。

啟用 Sport 模式後,變速箱會改變換檔邏輯:延後升檔、提早降檔,讓引擎維持在較高的轉速區間。這樣做的好處是踩油門時動力反應更快、加速更直接,適合需要瞬間加速的場景。



2018年4月6日 星期五

EZLink SSD 安全抹除 secure rease

EZLink SSD 安全抹除 secure rease

廠商已經倒了,找了一下有挖到他的原廠軟體,在這邊備份一下
切記不要使用 USB連接,以及有可能需要使用 IDE 模式 (我還沒抹除過先找來放)

創建SSD 安全抹除 secure erase

創建 SSD 安全抹除 secure erase

前篇寫了金字噸的,這篇補上創建的
https://charlottehong.blogspot.tw/2018/04/ssd-secure-erase.html
建議使用官方提供的專屬軟體不要使用通用的安全抹除

安全抹除

需要有第二個作業系統,如果有第二台電腦直接拆去第二台比較快;如果沒有的話看有沒有第二顆硬碟,可以直接從尾部切割一些空間安裝一個系統來執行。
切割方式可以對著開始按右鍵,然後開啟 磁碟管理(k) 對著你的第二顆硬碟的分割區按右鍵壓縮,壓縮出足夠的空間。
然後就正常安裝win10即可,這邊安裝完畢要注意先不要開接著看下面

使用IDE模式開啟

記得新安裝好的 Win10 要到BIOS內設置為 IDE 模式啟動,因為那個軟體只支援IDE模式下安全抹除。
如果是已經安裝好的系統從這裡教學 AHCI轉IDE,不用重灌系統
https://charlottehong.blogspot.tw/2018/02/win10-sysprep.html
記得抹除完畢之後還會轉回來 AHCI 模式,這樣對硬碟壽命、效能都比較好。轉回來的方法跟轉過來方法是一樣的。
覺得超級雷…SATA 要開 AHCI 比較好,要轉 IDE 模式還頗麻煩,之後抹除完畢還要轉回來。
然後就開啟 SSD Scope 軟體按抹除吧~

2018年4月1日 星期日

金士頓 SSD 固態硬碟 速度變超慢,如何安全抹除(Secure Erase)

金士頓 SSD 固態硬碟 速度變超慢,如何安全抹除(Secure Erase)

軟體(可在AHCI模式抹除):
安全抹除最大差別在於沒有真的去寫一次0,所以一下子幾秒就好了不會增加無謂損耗
,類似於直接在韌體上消除標記的概念。

安全抹除

條件
  • 必須 AHCI模式下運行
  • 更新韌體到最新
更新韌體(至少按一次)
開始抹除
開始抹除之後會要求你輸入序號的末四碼,就是圖中我塗掉的地方最後4碼

完整格式化

完整格式化會造成多於的浪費讀寫,以及他並不能真的清除所有地方
SSD讀寫有幾個不一樣的地方
  1. 主動尋找0的地方先寫(避開重複寫同一個地方)
  2. 磁軌是模擬出來的,實際上寫的位置是韌體的算法決定的
先上一篇比較有爭議的文章
http://www.coolaler.com/threads/ssd.261697/
這一篇底下有蠻多人反對的,客觀來看如果考慮到[2],你對硬碟完整格式化,也就是對全部填0,會發生的事情就是,在軟體上你認為是從磁軌0寫到最後一軌,實際上在硬體也就是SSD內根本就不存在磁軌0,他就是幫你找一塊他覺得好的地方寫上。
文中的說法是會自動使用FF填滿整顆,但是問題是填滿的時候應該不是塞檔案而是從磁軌0填充FF到最後一軌(我是沒有實際照著做,但是從軟體的語意上看起來是這樣,這邊就假設是),或者是說沒辦法在我的電腦見到磁碟空間已滿,所以這與直接格式化會是一樣的意思。
如果不是的話,那這樣不對,因為根據 [1] 還是整顆都髒的,接著根據[2]到時候填0也沒辦法填整顆。
結果就是浪費不少讀寫次數沒有把全部歸零,歸零多少[50%、80%甚至30%] 就是看運氣了,但是有一點是確定,變慢的硬碟這樣做過之後速度會變快
因為本來是整顆硬碟都不存在0,才要花時間找,現在是有部分是0所以測速變快了。
不過因為付出的代價還蠻大的,而且效率也不是很高,客觀來看不建議這樣做。
考量到 Secure Erase 多數情況是要下載原廠的軟體來做,如果原廠倒了….等等的情況未必能拿到軟體,那還是只能犧牲讀寫次數,做一次完整格式化來換一點點效能了~
不過在這一點我是覺得沒有什麼特別情況或是必要性等等,也沒差拉就算給你安全抹除也只是短暫快一陣子~很快會寫滿整顆了
安全抹除的指令根據主控不同設計不同,指令會不一樣;有通用的安全抹除軟體,慎用~可能會導致硬碟被鎖住不能用。
https://www.ptt.cc/bbs/PC_Shopping/M.1495986776.A.CF8.html


HDDERASE 抹除

這個軟體其實非常老舊了我並不認為他是,安全抹除,實際上爬文也有發現用這個方法安全抹除需要一點時間,顯然不是抹除。
不過他與前一章節提到的直接格式化最大不同在於,他需要再 IDE模式下才能工作,SSD的技術是建立在AHCI上的,不知道是不是因為這樣能夠干擾SSD的最佳化,進而真的從頭遍歷一遍。(這我不確定只是猜測~)


完整抹除

基於SSD是依據算法找存點,還有他是有一塊緩衝+備用區的,要完整消除資料很困難。
能刪除比較多的做法就是,填滿整顆固態硬碟,至少可以保證除了隱藏的工作區、備用區之外的地方都被刪除了,最後再做一次安全抹除,消除填滿的垃圾資料。


其他廠牌安全抹除

創建

限制
  • 不能使用USB連接
  • 只能使用IDE模式抹除