2023年4月10日 星期一

從Excel呼叫命令提示字元或批次檔的方法

1.在EXCEL中新增空白活頁簿

2.按 Alt + F11 開啟 Visual Basic Editor (VBE).

3.按 F5 執行巨集--巨集名稱輸入Call_CMD--建立

4.在 Module 的編輯頁面的 Sub Call_CMD() 與 End Sub 中間輸入 Call Shell("cmd.exe /S /K")

5.再按一次 F5 執行巨集

6.此時就會跳出命令提示字元

7.如果是要執行批次檔,則使用底下的巨集

Sub RunBatch()

    Call Shell(("cmd.exe /S /K") & "C:\目錄\批次檔.bat", vbNormalFocus)

End Sub



2021年9月23日 星期四

調整日期時間使其不自動同步的方法

 1.開始--按滑鼠右鍵--Windows Powershell(系統管理員)


2.將底下的指令複製並貼上

Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters -Name "Type" -Value "NoSync"


3.將底下的指令複製並貼上

New-NetFirewallRule -DisplayName "Block Sync Time Port" `

                    -Direction Inbound `

                    -LocalPort 123 `

                    -Protocol UDP `

                    -Action Block


4.變更日期時間(格式為 mm/dd/yyyy hh:mm 例如 09/23/2021 12:00)

set-date -date "09/23/2021 12:00"


ps.如欲恢復原先設定則先變更回原來的日期時間,並複製並貼上底下兩行指令

Remove-NetFirewallRule -DisplayName "Block Sync Time Port"

Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters" -Name "Type"

2021年7月12日 星期一

如何在 Window 11 21H2(OS Build 22000.65) 讓多個使用者使用遠端桌面連線

 Windows 系統的遠端桌面係由 "C:\Windows\System32\termsvr.dll" 這個檔案來控制,所以只要修改檔案的內容,就可以解除封印,讓多人同時使用遠端桌面的方式來連入 Windows 系統,同時操作一部電腦。

截至目前為止(2021/07/12),雖然 Windows 11 尚未正式發表,不過網路上流傳的 Windows 11 測試版本仍然可以透過修改 termsvr.dll 的方式來讓多人同時使用遠端桌面。底下簡短的說明主要的步驟:

1.變更 termsvr.dll 檔案的安全性,讓擁有者變更為本機的 administrators 群組,並授予 administrators 群組修改的權限

2.使用16進位HEX編輯器(個人習慣使用 HxD Hex Editor,https://www.mh-nexus.de ) 尋找十六進位數值『39 81 3C 06 00 00 0F 84 4F 68 01 00』,並將其取代為『B8 00 01 00 00 89 81 38 06 00 00 90』,然後儲存檔案

3.變更 termsvr.dll 檔案的安全性,讓擁有者改回原本的 TrustedInstaller (NT Service\TrustedInstaller)

4.新增 Windows 的使用者帳號,並設定密碼(如果有多人需要使用遠端桌面,則要建立多組帳號密碼)

5.執行 Windows 的『設定』> 『遠端桌面』開啟遠端桌面功能,並選取可以遠端存取此電腦的人員

6.從其他台電腦執行 mstsc /v:提供遠端桌面電腦的 IP  (例如 mstsc /v:192.168.2.123),點選連線後,輸入步驟 4 的帳號密碼,就可以多人同時連入使用遠端桌面




2020年10月30日 星期五

遲來的證書----Comptia CSSS

看證書上寫著 2003/01/06 就取得資格,但是到 2020/10/30 才收到 email 通知。時隔這麼久才知道自己有這張證照,值得記錄一下 😄




2019年11月25日 星期一

如何避免 SKYPE 接收相同名稱之案時,舊檔案會被覆寫


如何避免 SKYPE 接收相同名稱之案時,舊檔案會被覆寫

早期 SKYPE 接收相同名稱之檔案時,會自動在檔名後面增加 (1)(2)、、、,但是不知道從哪一個版本之後,這個功能就被取消了,相同名稱之檔案會被自動覆寫,這會造成一些困擾。例如:A傳送了一個叫做「XYZ.TXT」的檔案給BB立即把這個檔案傳送給C。過一會兒後A修改了「XYZ.TXT」的內容,並從SKYPE中移除先前的檔案再重新傳送;此時B並不會發現「XYZ.TXT」檔案的內容已經變更了,所以也不會再重新傳送給C。如此一來,就會發生有二個不同版本的「XYZ.TXT」,AB的檔案內容是修改過的,而C的檔案內容卻是舊的。

要如何避免上述的情形發生?在SKYPE還沒有修正此一情形之前,只能設法讓SKYPE在接收的檔案時,不能是相同名稱。底下將說明該如何設定,才能讓SKYPE無法接收相同檔名的檔案。

這個方法是利用修改資料夾的權限來達成。首先請先設定一個資料夾(在這個範例中,我們設定成D:\SKDN),用來專門接收SKYPE傳送的檔案。然後變更SKYPE的設定,將收到的檔案儲存到該資料夾。



接著我們在D:\SKDN資料夾按滑鼠右鍵內容安全性進階,然後點選『停用繼承』,並選擇『將繼承的權限轉換成此物件中的明確權限』,再點選確定。


接著要變更三個主體的權限,分別是AdministratorsSYSTEMAuthenticated Users。先點選Administrators在點選編輯,然後在基本權限中點選『顯示進階權限』,接著依照底下圖片的內容勾選項目,再點選確定:


SYSTEM主體的權限設定如下:


Authenticated Users主體的權限設定如下:


全部的權限設定完成之後,套用並確定結束資料夾權限的變更。之後這個資料夾只允許新增檔案,不允許變更或刪除檔案。經過以上的設定之後,當A第二次傳送相同檔名的檔案給B時,B會無法接收,只能請A變更檔案名稱後再傳送,如此一來,就可以避免相同檔名會有不同內容的情形發生。

2019年1月11日 星期五

Excel奇進偶捨(四捨六入五成雙)進位的計算方法

最近因為工作的關係,必須在 EXCEL 的表格中使用奇進偶捨的進位方式。從小到大我只知道四捨五入,現在才知道原來四捨六入五成雙在統計上是比四捨五入更加精確。

上網查詢在 EXCEL 中該如何計算此進位法?看到一個網頁有提供一個 VBA 非常簡單好用,在此跟大家分享這個方法。

首先在 EXCEL 工作表按 Alt-F11 二個鍵,此時會出現 VBA 活頁簿,接著在 VBA 活頁簿的上方選單點選「插入」--「模組」,並將底下的文字貼到模組中,然後就可以關閉 VBA 活頁簿

Function BankerRound(rng As Double, sig As Integer) As Double
    BankerRound = Round(rng, sig)
End Function

使用時在儲存格輸入『=BankerRound(值,小數位數)』就可以得到四捨六入五成雙的進位結果了

修正:使用此VBA時,如果BankerRound的括弧裡面是公式,很可能會計算錯誤,所以建議當值是公式時不要使用。改用底下的計算方法:

=IF(AND(ISEVEN(值*10^小數位數),MOD(值*10^小數位數,1)<=0.5),ROUNDDOWN(值,小數位數),ROUND(值,小數位數))

參考資料:
https://stackoverflow.com/questions/44310679/bankers-rounding-function-in-excel

2018年11月12日 星期一

使用「Windows相片」來剪輯製作影片(僅適用於Windows 10)

從 Windows Me 年代開始,微軟就提供一套「Windows Movie Maker」供使用者剪輯製作影片,可惜從 Windows 8.1 開始,這套簡單易用的工具程式就被微軟移除掉了。

不過現在 Windows10 提供了另一套功能更強大的工具,就是「相片」;Windows 10 的相片功能,不只是拿來瀏覽相片,還可以製作投影片,也可以剪接影片;影片還可以加上佈景主題、配樂、旁白、3D效果、、、,比以前的 Windows Movie Maker 有更多的功能選項。

使用方法一樣很很簡單,只要從開始選擇「相片」,然後點選上方的影片專案,再點選右上角的新增影片(可以選擇自動配樂或手動自訂配樂);接著選取要放入影片中的相片,然後點選【建立】並且為這個影片取個名稱,這樣子就完成了一個影片專案了。如果您對自動產生的相片順序或過場時間、特效、、、不滿意,可以直接點選編輯,然後用滑鼠拉動相片順序,或者自行變更其他效果。編輯完成後選擇右上角的「匯出或分享」,並選取欲儲存的檔案大小,之後就會產生一個可以直接撥放的 mp4 影音檔。


ps.如果您從開始找不到「相片」這個功能,有可能是 Windows 10 預設的App被移除了,只要從開始按滑鼠右鍵,選擇「Windows PowerShell(系統管理員)」,然後輸入下列的指令,就可以還原全部預設的App。

Get-AppXPackage -allusers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}


2018年5月1日 星期二

如何避免 Windows10 自動安裝一些不必要的程式(例如 Candy Crush、泡泡魔女傳奇、、、)

Windows10 會自動安裝一些遊戲或其他程式,例如 Candy Crush、Spotify、泡泡魔女傳奇、帝國捍衛戰、、、等,而且移除後可能又會重複被安裝。

要避免這種情形,只要從開始按右鍵執行,輸入regedit,接著找到 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows,接著按滑鼠右鍵新增機碼,名稱為『CloudContent』,然後在 CloudContent 按滑鼠右鍵新增 DWORD(32位元)值,名稱為  『DisableWindowsConsumerFeatures』,並設定數值資料值等於『1』。接著關閉電腦再重新啟動就可以了。

如果已經被安裝許多不要要的程式,您可以手動一個一個移除,也可以在開始按滑鼠右鍵,然後點選 Windows PowerShell,接著輸入 Get-AppXPackage | Remove-AppxPackage 再按 Enter 就可以一次移除所有不必要的程式了。

如果要移除所有帳號的不必要程式,則選擇 Windows PowerShell(系統管理員),然後輸入 Get-AppxPackage -AllUsers | Remove-AppxPackage 就可以連其他帳號的程式一併移除。





2018年4月19日 星期四

使用磁碟陣列讓資料同時寫入二顆硬碟,算不算是備份?

最近剛好遇到二件事,促使我想寫這篇來釐清一下觀念。
其一是某客戶來電詢問說他們的伺服器有使用磁碟陣列,是將資料同時寫入二顆的那種,這樣算不算是有備份?其二是另一家客戶新購管理系統,軟體公司在伺服器安裝完軟體後表示:如果需要備份資料庫,就必須使用二顆硬碟做陣列。
首先簡單說一下什麼是磁碟陣列?磁碟陣列(RAID, Redundant Array of Independent Disks)就是將幾顆實體的硬碟透過不同的組合方式(RAID-0、1、5、6、、、),使之成為一個邏輯上的硬碟;它的好處是可以提升效能或者增加存放資料的安全性(也就是容錯)。
一般中小企業最常用的磁碟陣列大概是 RAID-1,就是將二顆實體硬碟組合起來,資料會同時存放在二顆硬碟當中,也稱為鏡像(Mirror)。這種陣列主要的目的是容錯,意思是當二顆硬碟的任何一顆發生硬體故障時,由於二顆硬碟的資料是一模一樣,所以另一顆硬碟仍會繼續運轉,伺服器也會正常工作。但是,如果不是磁碟硬體故障,而是不小心誤刪資料,或者被勒索病毒加密,由於二顆硬碟的資料是鏡像的,所以二顆硬碟的資料都會毀損。
那什麼是備份呢?備份就是將重要的檔案複製起來,另外存放一份或更多份。它的目的是當發生災難時(包含軟硬體的毀損),還可以有機會恢復資料。備份有所謂的3-2-1原則,意思是備份至少要有 3 份,必須使用 2 種以上的媒體來存放,其中有 1 份必須存放在異地。
結論就是「磁碟陣列」不是「備份」,磁碟陣列是用來避免硬碟壞掉導致資料遺失(或者提升磁碟效能);重要的資料檔案一定要多做備份,備份的好處是無論是硬碟故障、主機壞掉、誤刪或者被加密勒索時,只要有完整的備份,就能夠迅速恢復資料。

幾種常見的顯示介面簡介

1. D-sub(VGA)介面:類比式訊號,從1987年使用到現在,已逐漸被其他數位式顯示介面取代。

2. DVI介面:將顯示卡的訊號以二進位方式傳送到螢幕,可以減少傳統類比式D-sub(VGA)介面失真或雜訊干擾的情形。常見的DVI介面有二種:DVI-I (Integrated混合式)跟 DVI-D(Digital數位式), DVI-I 可以傳輸數位跟類比訊號;DVI-D傳輸真正的數位訊號,有較高的頻寬及畫質。二種介面外觀上的差別,在於接頭右方是否有多五個用來傳輸類比訊號(R、G、B、垂直水平、接地)的腳位。DVI-I可適用於較舊款的螢幕,DVI-D則適用於較新型的液晶顯示器。

3. HDMI介面:是一種全數位化的介面,在同一條線材上可以同時傳輸影像及聲音,是目前常見的螢幕連接介面,要注意的是HDMI連接線長度最好不要超過5米,以免發生訊號衰減的情形。

4. DisplayPort介面:是將影像跟聲音的數位訊號以封包來傳送,有較高的頻寬及效率來傳輸高畫質的數位訊號,而且具有串接功能,可以連接數台螢幕。




Windows 10 Sysprep 系統準備的步驟(以 HP ProDesk 600G3為例)

1.設定 BIOS:(目的是為了能透過工具光碟或 USB 來開機)

Secure Boot Configuration: Legacy Support Enable and Secure Boot Disable

2.進入 Windows10 系統後,執行 Windows Update 到最近的更新(這個地方要注意不能執行版次更新,否則會導致無法完成sysprep;例如原本是1703版就不能更新到1709版,如果是要系統準備1709版,必須一開始就是安裝1709版本)

3.變更使用者帳戶控制設定:(目的是減少整個過程中權限的干擾)

更改登錄值 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA = 0 然後重新啟動電腦

4.拔除網路線(目的是避免在執行後續的步驟時,Windows又自己安裝一些不必要的App)

5.變更 C:\Program Files\WindowsApps 資料夾的擁有者----變更為 administrators 群組

6.移除內建的 APP(需要重開機執行多次):

Get-AppxPackage | Remove-AppxPackage
Get-AppxPackage -allusers | Remove-AppxPackage

7.啟用 Administrator 帳號,並以 Administrator 登入,登入後重新執行上一個步驟(步驟 6)

8.執行磁碟清理

9.執行 Sysprep:

Sysprep /generalize /shutdown /oobe

10.如果 Sysprep 失敗,通常是內建的 App 沒有移除乾淨,可以查看紀錄,看看是哪一個 App 未完全移除,手動移除該 App 後再執行 Sysprep

11.使用具有 clone 功能的工具光碟/隨身碟開機,執行磁碟 clone 或備份成 image 檔;將來如果電腦發生異常,就可以透過此 clone 硬碟或 image 檔來迅速還原系統。

2018年1月23日 星期二

Window 10 無法安裝 ttf 字型的解決方法(出現不是有效的字型檔)

1. 請先安裝NexusFont (下載位址 http://www.xiles.net/download.php?file=nexusfont_setup_2.6.2.exe&product=NexusFont2&ver=2.6.2.1870 )

2. 安裝完成後在左邊的【範例群組】按滑鼠右鍵--加入資料夾,並指向全真字型所在的資料夾位置;NexusFont會自動匯入所有資料夾下的字型

3. 選擇欲安裝的字型(eg.全真楷書)按滑鼠右鍵--安裝--圈選【複製檔案到系統字型資料夾】--安裝

4. 安裝完成,關閉NexusFont


2017年11月15日 星期三

如何避免Windows更新後,PDF預設程式由Acrobat Reader被更改為Edge

步驟如下:

1. 將 defaultassociations.xml 複製到 C:\Windows\System32\ 目錄下

2. 將  acrobat_11_privileged.reg 和 acrobat_dc_privileged.reg 複製到 C:\

3. 按[WINDOWS]+[R],輸入 shell:common startup 然後點選確定,將 acrobat.bat 複製到該資料夾下(C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup)

4. 按[WINDOWS]+[R],輸入 gpedit.msc 然後點選確定,點選電腦設定--系統管理範本--Windows元件--檔案總管--設定預設關聯設定檔--圈選已啟用--確定

5. 重新啟動電腦

說明:

1. defaultassociations.xml 是 Windows10的「預設關聯設定檔」,裡面設定哪一種檔案類型要用什麼程式開啟

2. acrobat_11_privileged.reg 和 acrobat_dc_privileged.reg 的作用是關閉 Acrobat Reader的保護模式,避免開啟PDF時出現錯誤;至於為什麼要分acrobat_11跟acrobat_dc? 主要是在一般的工作環境中,使用者可能是使用不同版本的Acrobat Reader

3. 把 acrobat.bat 放在啟動資料夾,是為了讓上面二個登錄值,在每次開機時寫入系統

4. 修改群組原則,讓系統去讀取 defaultassociations.xml

其實,如果只是PDF要指定預設關聯檔,只要執行步驟1跟4就可以了;您也可以依照自己的習慣修改defaultassociations.xml,甚至設定成網域群組原則,這樣就可以減少很多的管理工作

1. defaultassociations.xml
https://drive.google.com/file/d/1TWtGnkM7xicnY-GoMO1XFzBlEitMJAwt/view?usp=sharing

2. acrobat_11_privileged.reg
https://drive.google.com/file/d/1p0-RHunIi8a-Tc95LP14MRdor_abljCz/view?usp=sharing

3. acrobat_dc_privileged.reg
https://drive.google.com/file/d/1mlsD_lOHmUTphm6Tfct3ujYwke27He6c/view?usp=sharing

4. acrobat.bat
https://drive.google.com/file/d/1VnrK9lbOQx_oIYbtFmUckMI5_FBH45VZ/view?usp=sharing

2017年6月13日 星期二

如何將檔案藏在圖片中

準備工具:
1. 圖片檔(假設檔案名稱為original.jpg)
2. 欲隱藏的檔案(假設檔案名稱為wanna2hide.txt)
3. 壓縮程式(以7-zip為例)

步驟:
1. 先將欲隱藏的檔案壓縮(按右鍵加入壓縮檔),並在加密欄位輸入密碼,壓縮後會產生一個壓縮檔(例如wanna2hide.zip)

2. 開啟命令提示字元,並切換到圖片檔及步驟1壓縮檔所在的目錄,並輸入以下指令:

COPY /B  original.jpg + wanna2hide.zip hidden.jpg

3. 此時會產生一個 hidden.jpg 的圖檔,肉眼看起來是跟原本的original.jpg一模一樣,但是裡面卻藏了一個檔案。此時就可以將原先的original.jpg 、wanna2hide.txt、 wanna2hide.zip都刪掉,僅保留hidden.jpg即可

4. 如果要還原原先被隱藏的檔案(wanna2hide.txt),只需執行7-zip壓縮程式,將hidden.jpg解壓縮並輸入密碼就可以了



2016年12月6日 星期二

Windows 10 Sysprep 系統準備的步驟(以ASUS ESC500 G4並重新安裝Windows_10_1607為例)

整個流程大約分為9個步驟:

1.設定 BIOS:

Boot----Security Boot----OS Type: Other OS
Boot----CMS----Launch CSM: Enable
Boot----CMS----Launch CSM----Boot Device Control: UEFI and Legacy OPROM

2.安裝好Windows 10 1607版及驅動程式後,執行 Windows Update 到最近的更新

3.變更使用者帳戶控制設定----改為不要通知(直接透過控制台來設定,不要去更改 EnableLUA 登錄值)

4.變更 C:\Program Files\WindowsApps 資料夾的擁有者----變更為 administrators 群組

5.移除內建的 APP(需要重開機執行多次):

  Get-AppxPackage | Remove-AppxPackage
  Get-AppxPackage -allusers | Remove-AppxPackage

6.啟用 Administrator 帳號,並以 Administrator 登入,登入後重新執行上一個步驟(步驟 5);並刪除不必要的帳號(例如user,但不可刪除DefaultUser0)。

7.執行磁碟清理

8.執行 Sysprep:

  Sysprep /generalize /shutdown /oobe

9.使用 Acronis Trueimage 2014以後的版本(之前的版本會多產生一個分割區,導致無法開機),執行磁碟 clone 或備份成image 檔;將來如果電腦發生異常,就可以透過此 clone 硬碟或 image 檔來迅速還原系統。

2016年12月3日 星期六

解決 Windows 10 [開始]圖示滑鼠左鍵點擊失效

1.在[開始]圖示按滑鼠左鍵,選擇命令提示字元(系統管理員)

2.在命令提示字元視窗中輸入 powershell 然後按 Enter 鍵,此時應該會出現 C:\windows\system32> 的提示字元

3.複製底下的指令並貼上命令提示字元視窗中,然後按 Enter 鍵

Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"}

4.此時會開始執行指令,請忽略所有的紅字訊息,等待指令執行完畢;待執行完成後,以滑鼠左鍵點擊[開始]圖示,會發現功能已恢復正常。

2016年11月29日 星期二

使用 WSUS Offline Update 解決 Windows 7/8.1 無法更新的問題

近來 Windows7/8.1 在執行 Windows Update 時,往往等待檢查更新就要等到天荒地老,最後還無法完成;網路上雖然有各種解決方案,但是經過多方嘗試後往往也是無法完成更新,在此提供一個簡便的方法來解決無法更新的問題。

首先請到 http://www.wsusoffline.net/ 下載最新版本的 WSUS Offline Update 工具程式,下載完成後解壓縮到指定的目錄,然後執行 UpdateGenerator.exe;先在「Windows標籤」選擇要更新的作業系統以及 32 或 64 位元(當然也可以全部勾選),然後在 Options 選項選擇是否要下載其他更新項目,最後點選【Start】。

UpdateGenerator 會下載勾選項目的更新,等下載完成後到剛剛解壓縮目錄下的 client 資料夾,以系統管理員身分執行 Update.cmd,此時就會開始安裝 Windows Update 的更新程式了,安裝完成後不僅完成更新,以後也可以順利執行 Windows Update。


2016年11月3日 星期四

Windows 10 變更網路類型(公用、私人)的方法

1. 從左下角的開始---設定---網路和網際網路---乙太網路---在右方網路(已連線)的圖示雙擊滑鼠左鍵---出現讓此電腦可供探索

2. 選擇「開啟」代表私人網路;選擇「關閉」代表公用網路

公用網路的安全性比較高,但是在辦公室或家中要分享資源時會比較不方便;私人網路則剛好相反,安全性較低,但是分享方便。


2016年9月6日 星期二

Windows 10批次檔提升權限的方法

只要將下列指令放在批次檔最前面就可以了


REM --add the following to the top of your bat file--


@echo off

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin
    pushd "%CD%"
    CD /D "%~dp0"
:--------------------------------------
資料來源 https://sites.google.com/site/eneerge/scripts/batchgotadmin