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,平時行車只會用到 N 與 D 這兩個檔都不用按,就是直接上推與直接拉,不會有任何打錯檔危險。

需要用到的時候(箭頭是方向,有些是雙向)

  1. 從 P <-> 任意檔
  2. 從 N -> R (反過來不需要)

不需要按的時候

  1. 從 N <-> D
  2. 從 R -> N

停紅燈的時候

自排車因為只要打 D 或 R 檔車子就會以很緩慢的速度行駛(大概一般走路速度),所以得踩著煞車
  • 可以選擇踩住煞車
  • 直接推到N檔(不按按鈕)
綠燈之後直接推到 D 檔再踩油門即可,避免先踩油門再拉D檔,這樣離合器磨損會比較大,不小心踩到一點不會怎麼~不要刻意拉轉就好。
一般的車子變速箱並沒有設計成可以彈射起步,就是N檔踩油門轉速拉高之後直接推到D檔,這樣啟動會彈射出去,多玩幾次變速箱會損毀

停車時該如何打檔

如果是在平地停車怎麼打不太會有影響,但是如果在斜坡稍微有一點就算,打錯檔會損壞變數箱
變數箱的P檔指的是停車檔的意思,它具有煞車的功用,但是並不是很強,他是在變數箱內有一個東西卡著齒輪。
如果你在斜坡上直接打P檔,就會導致所有的力量都吃在這個齒輪上,這個齒輪並不是設計來長時間抵擋煞車的,而是設計來防止有人推到車子擋一下子的功用,錯誤的使用會導致齒輪損壞(變數箱維修很費工價錢不便宜)
除此之外還會有一個問題就是,那一跟卡住齒輪的物件,在斜坡上會因為正在施力導致拔出來,也就是你的 P檔 會沒辦法打到 N檔,當然硬打是可以的拔出來的,每一次都是傷害多打幾次可能就會需要進廠拆變數箱了。
正確的停車方法是不熄火,熄火沒有電力輔助會導致煞車沒力你有可能採緊煞車還會滑動,
  1. 踩住煞車然後拉手煞車,放開煞車這時候確保手煞車停住了
  2. 打入P檔熄火下車
這裡的重點是手煞車要比 P 檔先煞車,這樣才不會吃到 P 檔的齒輪
然後還沒結束,上車的時候操作也要對否則就前功盡棄了
  1. 上車後先發動車子(避免沒煞車)
  2. 踩住煞車
  3. 離開 P 檔 (看你要前進還是後退打R或D都可以)
  4. 放開手煞車
這裡的重點是 P 檔要比手機煞車先放開,不然你手煞車先放就直接卡住 P 檔的齒輪了前面就白做了

打檔桿子左邊的小按鈕用途與使用方法

這個是加速紐,按了可以在儀表看到 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模式抹除