2016/06/28

Wordpress可以用外掛建立Google APK, Apple App

由於現在使用Application實在是銳不可擋, 看網頁的人越來越少! 必須要快點建立APP囉

Google Admob 管理APP收益系統

Google Admob
就如同是網頁廣告營收系統的Adsense,而在APP的廣告收益是透過Admob管理收益

Google Play APK 的世界

Google Play Developer Console:
1. 網址: https://play.google.com/apps/publish/
(開發者網站則是 https://developer.android.com/index.html )

2. App應用程式: https://play.google.com/store/apps/details?id=com.google.android.apps.playconsole

如果是第一次要發佈應用程式,必須先申請Google開發者帳號。申請條件:

  • 必須使用Google帳號。
  • 申請開發者帳號的費用是25美金。
  • 費用只接受信用和Google電子錢包支付。
  • 帳號永久有效

Apple Store App 的世界

待補…

WordPress外掛- 把網站內容轉成APP

1. WordPress外掛 – Androapp
此款外掛可以協助Wordpress的部落客, 建立基本的APK
Androapp – Native Android mobile app for wordpress site
其實我有是過其他外掛, 但都出現一些奇怪的問題, 直到找到這款Androapp 外掛, 當然可能有未知問題還沒被我發現而已! 像是以後要更客製化是否能過作到,會不會有怪怪bug …等等
但要收費, 而且不支援產生ios App:

Pricing
Completely free for the first 1 month, no credit card needed.

Annual Renewal fee:

Normal WordPress site: $50/year
Woocommerce enabled site: $100/year

** Notice: Price will be increased by 20% from 1st July 2016. i.e $60 for normal site and $120 for ecommerce site** In case you are not willing or not able to pay $50, We will reserve all ad slot for us, you will not be able to show ads on the app.

2. WordPress外掛 – Worona
這款外掛有免費版也有付費版, 付費版150歐元起跳
其實我也還在試驗利外一個 Worona外掛, 免費且支援Google APK 與 IOS APP, 但目前卡關中, 而且他的工程師很nice還可以問問題有回信給我建議:

我Q: So nice to have your Worona plugin. I got a issue when building myself APK. It looks like I have a similiar problem with this link. Unfortunatly, I can’t fix it even if install json-rest-api plugin. https://wordpress.org/support/topic/wp-json-error

回應:
You don’t need to install any JSON REST API plugin, the Worona Plugin already injects the REST API.
In addition, to make the Chinese characters work please install https://es.wordpress.org/plugins/so-pinyin-slugs/.
Please let us know if it works or if you have any other problem.

直接自己來開發APP

基本觀念:
1.用AppsGeyser把網站轉換成Android APP / The Usage of AppsGeyser: From Website to Android APP

2016/06/23

什麼是.wim檔案? Windows Imaging File Format (WIM)

本主題介紹 Microsoft Windows 映像 (WIM) 檔案格式。WIM 是 Windows Vista 中所推出,以檔案為基礎的磁碟映像格式。WIM 檔案屬於壓縮的封裝,包含許多相關的檔案。WIM 檔案的格式經過最佳化,使用 LZX 可得到最大壓縮、使用 XPRESS 可得到快速壓縮,或者不壓縮。

WIM 檔案結構

WIM 檔案結構共包含六種資源:標題、檔案資源、中繼資料資源、查閱資料表、XML 資料及完整性資料表。以下插圖顯示包含兩個映像之 WIM 檔案的一般配置。

WIM File Structure

WIM 檔案配置

  • WIM 標題:定義 .wim 檔案的內容,包括關鍵資源 (中繼資料資源、查閱資料表及 XML 資料) 的記憶體位置,以及各種 .wim 檔案屬性 (版本、大小及壓縮類型)。
  • 檔案資源:包含擷取之資料的一系列封裝,例如來源檔案。
  • 中繼資料資源:包含您所擷取之檔案的相關資訊,包括目錄結構與檔案屬性。.wim 檔案中每一個映像都有一個中繼資料資源。
  • 查閱資料表:包含 .wim 檔案中之資源檔案的記憶體位置。
  • XML 資料:包含映像的其他資料。
  • 完整性資料表:包含在套用操作中用於驗證映像之完整性的安全性雜湊資訊。

3

imagex 的使用教學介紹 - 擷取、修改及套用映像

(參考微軟教學網頁), 然整理如下:

什麼是 ImageX?

ImageX 是一套命令列工具,可讓原始設備製造商 (OEM) 與企業擷取、修改及套用以檔案為基礎的磁碟映像,以利快速部署。 ImageX 可與 Windows 映像檔案 (.wim) 搭配使用,將檔案複製到網路,也可以與使用 .wim 映像的其他技術搭配使用,例如 Windows 安裝程式、Windows 部署服務 (Windows DS) 以及 System Management Server (SMS) 作業系統功能部署套件。

ImageX 如何運作

ImageX 是從一組 API (稱為 Windows 的映像 API) 組建的映像工具。ImageX 的主要目的是擷取、修改及套用映像,以部署於製造商或公司的 IT 環境中。ImageX 支援新的 Microsoft Windows 映像 (.wim) 格式。

ImageX 結構: ImageX 會依賴數個元件,包括 ImageX 執行檔 (ImageX.exe)、WIM 檔案系統篩選器 (Wimfltr.sys 及 Wimfltr.inf)、WIM API 集,以及 .wim 檔案格式。下圖顯示這些元件之間的互動。

ImageX 命令列選項

ImageX 是 Windows Vista 的命令列工具,可用來建立及管理 Windows 映像 (.wim) 檔案。.wim 檔案包含一或多個磁碟區映像、包含已安裝之 Windows 作業系統映像的磁碟區。

若要修改磁碟區映像,您必須在執行 Windows XP Service Pack 2 (SP2)、Windows Server 2003 Service Pack 1 (SP1) 或 Windows Vista 的電腦上,安裝 Windows 映像檔案系統篩選器 (WIM FS 篩選器) 驅動程式。安裝 WIM FS 篩選器驅動程式可讓您將 .wim 檔案當成目錄一樣掛接,而且不用解壓縮或重新建立映像,就能在檔案管理工具 (例如 Windows 檔案總管) 中瀏覽、複製、貼上及編輯磁碟區映像。

mageX 命令列選項的用法如下:
imagex [flags] {/append | /apply | /capture | /delete | /dir | /export | /info | /split | /mount | /mountrw | /unmount} [parameters]

下列清單會顯示每個 imagex 作業類型所用的有效語法:

  • imagex /append image_path image_file {“description”} {/boot | /check | /configconfiguration_file.ini | /scroll | /verify}
    將磁碟區映像附加到現有的 Windows 映像 (.wim) 檔案。建立檔案的單一例項、將其與 .wim 檔案中已存在的資源相比較,讓您不致於重複擷取同一個檔案。

    • ex: imagex /append d:d:\imaging\data.wim “Drive D” /verify
  • imagex /apply image_file image_number image_name image_path {/check | /ref | /scroll | /verify}
    將磁碟區映像套用到指定的磁碟機。

    • ex: imagex /apply d:\imaging\data.wim 1 d:\New_Directory /verify
  • imagex /capture image_path image_file “name” {“description”} {/boot | /check | /compress [type] | /config | /flags “EditionID” | /norpfix | /scroll | /verify}
    將來自磁碟機的磁碟區映像擷取到新的 .wim 檔案。擷取的目錄會包含所有的子資料夾及資料。您無法擷取空的目錄。目錄必須至少包含一個檔案。

    • ex: imagex /capture d:d:\imaging\data.wim “Drive D” /verify
    • ex: imagex /compress fast /flags “Ultimate” /check /scroll /capture c:d:\install.wim “Windows Vista Ultimate”
  • imagex /delete image_file image_number image_name {/check}
    從含有多個磁碟區映像的 .wim 檔案中,刪除指定的磁碟區映像。此選項只會刪除中繼資料項目及 XML 項目。它不會刪除串流資料,也不會最佳化 .wim 檔案。

    • ex: imagex /delete d:\imaging\data.wim 1
  • imagex /dir image_file image_number image_name
    顯示指定之磁碟區映像內檔案及資料夾的清單。

    • ex: imagex /dir d:\imaging\data.wim 1
  • imagex /export src_file src_number src_name dest_file dest_name {/boot | /check | /compress [type] | /ref [splitwim.swm]}
    將指定之 .wim 檔案的複本匯出至其他的 wim. 檔案。來源及目的檔案必須使用同一個壓縮類型。您也可以匯出至新的映像檔案,將映像最佳化。當您修改映像時,ImageX 會儲存其他資源,使得映像整體大小增加。匯出映像會移除不必要的資源檔案。

    • ex: imagex /export d:\imaging\data.wim d:\imaging\sample.wim 1
  • imagex /info img_file[img_number | img_name] [new_name] [new_desc] {/boot | /check}
    傳回針對指定 .wim 檔案所儲存的 XML 描述,包括 (但不限於) 檔案大小總計、映像索引編號、目錄計數、檔案計數及描述。
    ex: imagex /info d:\imaging\data.wim
  • imagex /mount image_file image_number image_name image_path {/check}
    從 Microsoft Windows XP Service Pack 2 (SP2)、Microsoft Windows Server 2003 Service Pack 1 (SP1) 或 Windows Vista 掛接具有唯讀權限的 .wim 檔案至指定的目錄。檔案一經掛接之後,您便可檢視 (但不能修改) 目錄中包含的所有資訊。

    • ex: imagex /mount d:\imaging\data.wim 2 c:\mounted_images
  • imagex /mountrw image_file image_number image_name image_path {/check}
    從 Microsoft Windows XP Service Pack 2 (SP2)、Microsoft Windows Server 2003 Service Pack 1 (SP1) 或 Windows Vista 掛接具有讀取/寫入權限的 .wim 檔案至指定的目錄。檔案一經掛接之後,您便可檢視及修改目錄中包含的所有資訊。

    • ex: imagex /mountrw d:\imaging\data.wim 2 c:\mounted_images
  • imagex /split image_file dest_file size {/check}
    將現有的 .wim 檔案分割為多個唯讀分割 .wim 檔案 (.swm)。

    • ex: imagex /split d:\imaging\data.wim 600
  • imagex /unmount image_path {/commit}
    取消掛接指定目錄中的已掛接映像。

    • ex: imagex /unmount /commit c:\mounted_images

 

/verify 及 /check 支援 .wim 檔案的檔案驗證及資料完整性

在套用作業期間,/verify 及 /check 選項會影響效能。建議您使用 /verify 及 /check 兩個選項以獲得最佳的映像驗證及資料完整性。

  • /verify 選項: 會驗證快取寫入並檢查錯誤及檔案重複。/verify 選項不支援磁碟清除、寫出或略過系統快取。在擷取作業期間,/verify 選項會讀回擷取的檔案,並依每個位元組與原始所擷取檔案進行比較。在套用作業期間,/verify 選項會重新雜湊套用的檔案,並與在擷取作業期間所產生的雜湊進行比較。
  • /check 選項: 是專為偵測 .wim 檔案的損毀而設計。如果未在擷取作業期間設定 /check 選項,則在套用作業期間會忽略旗標。在擷取作業期間,/check 選項會對 .wim 檔案以每 10 MB 資料區塊的方式產生及儲存一系列的雜湊。在套用作業期間,/check 選項會對在擷取作業期間所儲存的雜湊進行雜湊並驗證這些 10 MB 的區塊。

ImageX 錯誤碼

  • 0 成功
  • 1 命令列選項無效
  • 2 WIMGAPI 失敗
  • 3 設定指令碼無效
  • 4 拒絕存取,需要系統管理員權限

什麼是.wim檔 ?

http://eeepage.info/windows-imaging-file-format-wim/

2016/06/22

如何在 UEFI-aware platform 上讓 USB 直接開機進 shell

(引用自: prhsie-bios)

在 UEFI platform 上(若不考慮 CSM 時), BDS phase 在開機時會主動搜尋 media 上的 /efi/boot/bootx64.efi 或 bootia32.efi 做為開機的起點. 而這檔案就分別是 X64 或 IA32 版的 shell.efi .

有 EDK II/UDK2010 的人, 可以把 EdkShellBinPkg 裡的 shell 複製到 UFD (請確定 UFD 是FAT 格式)裡:

    FullShell\Ia32\Shell_Full.efi to \efi\boot\bootia32.efi    FullShell\X64\Shell_Full.efi to \efi\boot\bootx64.efi    or    MinimumShell\Ia32\Shell.efi to \efi\boot\bootia32.efi    MinimumShell\X64\Shell.efi to \efi\boot\bootx64.efi

PS1: 可以只複製 bootx64.efi 就夠了
PS2: 原始碼與binary檔: EdkShellBinPkg source 1, EdkShellBinPkg source 2

順帶一提,手上有 AMI Aptio code 的人可以找一下 addon 裡面, 依樣劃葫蘆:

    addon\shell.efi to \efi\boot\bootx64.efi

如此一來,就可以在 Aptio Setup Utility 的 Boot 裡選用 “UEFI:” 開頭的 USB device 開機了. (當然了, 直接選用 Save & Exit 裡的 Boot Override 也可以). 這樣當你在沒包 shell UEFI-aware platform 上, 就可以不必用 Launch EFI Shell from filesystem device 的方法來手動 boot to shell 了. (這方法得把 shell.efi 複製到根目錄,並改為 shellx64.efi)

延伸閱讀: MSI也提供透過進EFI介面更新BIOS的文件說明

2014/06/13- 如何製作 UEFI 開機隨身碟並更新 BIOS?
https://tw.msi.com/files/pdf/Win8_BIOS_Update_Step_by_Step_Guide_ch.pdf

2015/01/21 – 使用 EFI Shell 更新 BIOS
https://tw.msi.com/files/pdf/win8_UEFI_BIOS_Update_auto_ch.pdf

2016/06/21

Wordpress外掛 - 好用的 readmore(閱讀更多) 客製化設定

原本wordpress會透過 the_excerpt() 去自動幫忙取開頭的一小段文字當作引言, 但我覺得太短了, 想要讓引言長一點! 找到這款外掛, 可以直接後台設定細節
Easy Custom Auto Excerpt
Auto Excerpt for your post on home, search and archive. Customize Read More button and thumbnail image. Easy to configure and have a lot of options.

2016/06/20

DevCon 或 DevCon64 可以啟用、 停用、 重新啟動、 更新、 移除,和查詢個別 裝置群組。

DevCon 公用程式是一個命令列公用程式,做為 [裝置管理員的替代。 使用 DevCon,您可以啟用、 停用、 重新啟動、 更新、 移除,和查詢個別裝置群組。

Windows Device Console (Devcon.exe)

https://msdn.microsoft.com/zh-tw/library/ff544707(v=vs.85).aspx
DevCon (Devcon.exe), the Device Console, is a command-line tool that displays detailed information about devices on computers running Windows. You can use DevCon to enable, disable, install, configure, and remove devices.
DevCon runs on Microsoft Windows 2000 and later versions of Windows.

What you can do with DevCon

Windows driver developers and testers can use DevCon to verify that a driver is installed and configured correctly, including the proper INF files, driver stack, driver files, and driver package. You can also use the DevCon commands (enable, disable, install, start, stop, and continue) in scripts to test the driver.

DevCon is a command-line tool that performs device management functions on local computers and remote computers.
(Note: To run DevCon commands on a remote computer, the Group Policy setting must allow the Plug and Play service to run on the remote computer. On computers that run Windows Vista and Windows 7, the Group Policy disables remote access to the service by default. On computers that run WDK 8.1 and WDK 8, the remote access is unavailable.)

Devcon features include:

  • Display driver and device info:  DevCon can display the following properties of drivers and devices on local computers, and remote computers (running Windows XP and earlier):
    • Hardware IDs, compatible IDs, and device instance IDs. These identifiers are described in detail in Device Identification Strings.
      Device setup classes
      The devices in a device setup class
      INF files and device driver files
      Details of driver packages
      Hardware resources
      Device status
      Expected driver stack
      Third-party driver packages in the driver store
  • Search for devices:  DevCon can search for installed and uninstalled devices on a local or remote computer by hardware ID, device instance ID, or device setup class.
  • Change device settings :  DevCon can change the status or configuration of Plug and Play (PnP) devices on the local computer in the following ways:
    • Enable a device
    • Disable a device
    • Update drivers (interactive and noninteractive)
    • Install a device (create a devnode and install software)
    • Remove a device from the device tree and delete its device stack
    • Rescan for Plug and Play devices
    • Add, delete, and reorder the hardware IDs of root-enumerated devices
    • Change the upper and lower filter drivers for a device setup class
    • Add and delete third-party driver packages from the driver store
  • Restart the device or computer : DevCon can restart a local device, reboot the local system on demand, or reboot the local system if required for another DevCon operation.

Windows Registry Editor 的修改範例 - 匯出/新增/更新/刪除

(出處:The Will Will Web) 操作登錄項目(Registry)是Windows RD經常做的事情,所以也會累積不少登錄檔(*.reg)隨時可供設定或移除,以下為範例!

匯出登錄機碼

無論如何,在測試修改機碼之前最好還是先備份一下,以一整個 “機碼” 為單位匯出(左側的每個資料夾都叫做機碼或稱子機碼),匯出成 *.reg 檔後,日後若改錯或出問題時,點兩下即可修復機碼。
登錄編輯程式 :: 匯出登錄項目

匯出後的格式像以下這樣,而我就是經常設定這種 *.reg 的檔案幫我更新、刪除一些系統常用機碼設定:

Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes]"DefaultScope"="{05C72334-11F3-4e9f-8740-98128F52EFB9}""Version"=dword:00000001[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{xxxx-xxxx}]"DisplayName"="Google""URL"=http://www.google.com/search?hl=zh-TW&esrch=BetaShortcuts&q={searchTerms}&lr=

新增或更新機碼值

我這陣子處理了許多開發環境的問題,其中幾天前講的 [ 安裝 Visual Studio .NET 2003 開發主機筆記 ] 就有提到如何解決 [HTTP – 401.1 未授權登入失敗] 的問題,這問題基本上只要新增一個機碼就能夠解決,而我就將這個「新增機碼」的動作儲存成 *.reg 檔,以後有其他電腦要設定環境時,直接 Double Click 就可以解決問題。

像這個問題需要在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa 機碼中新增一筆 DisableLoopbackCheck 的 DWORD 值,假設檔名我取成 Set-DisableLoopbackCheck.reg 內容如下:

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]"DisableLoopbackCheck"=dword:00000001

備註:若「機碼」本身不存在,執行 *.reg 的時候會自動建立所有不認識的機碼,無須在特別另外建立。

刪除機碼值

如上一個範例,若要將 DisableLoopbackCheck 的 DWORD 值刪除,就可以用以下語法進行刪除:

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]"DisableLoopbackCheck"=-

這裡的重點就是設定值的地方要設定成一個減號 ( – ),這就代表著「刪除」的意思。

刪除登錄機碼

跟身除機碼值不同,刪除機碼將會連同機碼、機碼值、與所有子機碼都一併刪除,算是個殺傷力相當大的語法,必須小心使用。
若你想將 Visual Studio 2008 最近開啟的專案(Recent Projects)全部清空的話,可以利用以下 reg 檔直接刪除機碼並重建機碼。

Windows Registry Editor Version 5.00[-HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList][HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList]

如何執行 .reg檔讓修改得以實現

簡單的方法是直接按兩下執行, 而automation的工程師需要用Script的方式自動去跑, 方式如下:
以Set-DisableLoopbackCheck.reg為例

rem modify registry DisableLoopbackCheck value to dword:00000001regedit /s Set-DisableLoopbackCheck.regTIMEOUT /T 15

2016/06/16

比較 NTFS 與 FAT 檔案系統, 還有UEFI型與BIOS型(Legacy)磁碟分割設定

常聽到hybrid mode就是表示你的BIOS支援兩種開機模式, uefi boot 與 legacy bios boot。但是這兩種方法的disk partition不太一樣喔!

1. 比較 NTFS 與 FAT 檔案系統

http://windows.microsoft.com/zh-tw/windows-vista/comparing-ntfs-and-fat-file-systems
適用於 Windows Vista
檔案系統是電腦用來組織硬碟資料的基礎架構。如果您正在安裝新的硬碟,必須先 使用檔案系統進行分割和格式化,才能開始儲存資料或程式。在 Windows 中,有三個檔案系統選項可供選擇,分別為 NTFS、FAT32 以及較舊且較少使用的 FAT (又稱為 FAT16)。

NTFS:
NTFS 是此 Windows 版本慣用的檔案系統。它比早期的 FAT32 檔案系統擁有更多的優點,包括:

  • 自動從某些磁碟相關錯誤修復的功能,但 FAT32 沒有此功能。
  • 改善對大型硬碟的支援。
  • 更好的安全性,因為您可以使用權限和加密限制核准的使用者對特定檔案的存取。

 

FAT32:
FAT32 與較少使用的 FAT 都是用於舊版的 Windows 作業系統,包括 Windows 95、Windows 98 以及 Windows Millennium Edition。FAT32 沒有 NTFS 所提供的安全性,所以如果您的電腦上有 FAT32 磁碟分割或磁碟區,任何可存取您電腦的使用者都可以讀取其中的任何檔案。FAT32 也有大小的限制。您 無法在此 Windows 版本中建立大於 32GB 的 FAT32 磁碟分割,而且無法在 FAT32 磁碟分割上儲存大於 4GB 的檔案。

使用 FAT32 主要是因為您的電腦有時會執行 Windows 95、Windows 98 或 Windows Millennium Edition,其他時間則會執行此 Windows 版本,又稱為多重開機設定。如果是這種情況,您需要在 FAT32 或 FAT 磁碟分割上安裝舊版的作業系統,並確保它是主要磁碟分割 (裝載作業系統的磁碟分割)。使用這些舊版 Windows 時需要存取的任何其他磁碟分割也必須以 FAT32 格式化。這些舊版的 Windows 可存取網路上的 NTFS 磁碟分割或磁碟區,但不能存取您電腦上的 NTFS 磁碟分割或磁碟區。


2. 了解磁碟分割

https://technet.microsoft.com/zh-tw/library/dd799232(v=ws.10).aspx

2-1. 建議的 BIOS 型(Legacy)磁碟分割設定, 含系統復原

https://technet.microsoft.com/zh-tw/library/dd744364(v=ws.10).aspx
On legacy BIOS-based systems, the first sector of a partition is loaded into memory and execution is transferred to this code.
請考慮在系統磁碟分割或不同的修復磁碟分割中,安裝例如 Windows 修復環境 (Windows RE) 等復原工具,讓使用者能夠修復或重新安裝 Windows 而不需要刪除復原工具。安裝完成之後,您就可以設定 Windows 開機管理程式在 Windows 無法啟動時啟動復原工具。若要設定不同的修復磁碟分割,請設定下列磁碟分割類型,將修復磁碟分割識別成公用程式磁碟分割:

  • 在 Windows SIM 中:將 Microsoft-Windows-Setup\DiskConfiguration\Disk\ModifyPartition\TypeID 設成 0x27。
  • 在 DiskPart 工具建立和格式化磁碟分割後,使用命令 set id=27。

建議您將修復與公用程式磁碟分割放置在磁碟機的開頭。修復磁碟分割不會顯示在 Windows 檔案總管中。
下列範例中的設定包含主要修復磁碟分割、主要系統磁碟分割,以及主要 Windows 磁碟分割。

 

下表顯示在 Windows SIM 中用來設定此範例的設定 (在 Microsoft-Windows-Setup\DiskConfiguration\Disk 設定下)。

描述建立磁碟分割:順序建立磁碟分割:延伸建立磁碟分割:大小建立磁碟分割:類型修改磁碟分割:順序修改磁碟分割:#修改磁碟分割:使用中修改磁碟分割:格式修改磁碟分割:標籤修改磁碟分割:代號修改磁碟分割:TypeID
復原工具 (例如 Windows RE)1自訂 Windows 復原映像的大小主要11NTFS復原R0x27
系統磁碟分割2300主要22trueNTFS系統S
Windows3true主要33NTFSWindowsW

我的電腦實際狀況:
就跟上面的分隔式一樣的, 所以我的電腦應是使用Legacy方式開機, 因為若是EFI方式開機的話, 一定會有一塊FAT32的分隔磁區負責開機!
指令介面:

圖式化:

2-2. 建議的 UEFI 型磁碟分割設定

https://technet.microsoft.com/zh-tw/library/dd744301(v=ws.10).aspx
預設設定: 若為全新安裝,Windows 安裝程式預設會建立可延伸韌體介面系統磁碟分割 (EFI 系統磁碟分割或 ESP)、Microsoft(R) 保留的磁碟分割 (MSR) 以及主要 Windows 磁碟分割。

磁碟分割樣式GPT因為是新格式,不免會與舊系統或硬體共用,但是舊版系統跟硬碟分區軟體有可能會不認得GPT啊!因此GPT分區在建立時也會順便建立一個性質為「Protective MBR」的分割區,以免無法辨識GPT分割區的軟體誤將檔案內容破壞。因此通常在使用Windows 8光碟安裝UEFI系統時,除了產生安裝系統的主分割區以外,還會有以下3個分割區:

  • 修復分割區(約300MB):這個分割區是微軟獨有,用來在需要修復系統的情況,供給Windows RE(Windows Recovery Environment)存取之用。
  • ESP分割區(約100MB):非必須存在,放置UEFI啟動檔案,在開機時UEFI BIOS會讀取這塊區域,檔案格式為FAT32。
  • MSR分割區(約128MB):必須存在,就是前面所說的Protective MBR,當這顆碟安裝到不支援GPT的系統或硬碟管理軟體時,由於它們只會讀取到此分割區,就不會破壞GPT主分割區中的檔案了。

而開機應該就是透過這個(EFI 系統磁碟分割或 ESP)去boot起來, 再將控制權給主要Windows磁碟分割

這一塊EFI System磁區,其分割格式為FAT32, 是負責開機!

此表格顯示磁碟分割結構:

描述PartitionID大小磁碟分割類型格式磁碟機代號
EFI 系統磁碟分割 (ESP)1100 MBEFIFAT32
MSR 磁碟分割2128 MBMSR
Windows3磁碟的剩餘空間主要NTFSW

2016/06/14

理財筆記 - 什麼是股東權益報酬率(ROE)? 發放現金股利才會讓ROE上升

指股東權益報酬率(ROE):
ROE計算 = 稅後淨利 / 公司淨值(股東權益) = 每股稅後淨利(EPS)/每股淨值
其中每股稅後淨利就是指EPS,而每股淨值則是指該公司的總資產減去總負債之後再除以流通在外的股份總數[公式:(總資產-總負債)/流通在外的股份總數]

1. 甚麼叫作盈餘(淨利)?
為了方便計算、我們在此先定義成EPS 每股盈餘(淨利)

2.甚麼叫保留盈餘?
公司有獲利EPS,然後發現金股息之後,剩下就是保留盈餘(保留在股東權益內)

舉例比較好懂:
Q: 某公司年初每股淨值20元,賺了3元EPS,發了2元現金股利,最後每股淨值多少?
A: (20+3-2=21), 期末淨值21元。ROE= 3 /21 = 14.3%

Q: 某公司年初每股淨值20元,賺了3元EPS,不發放股利,最後每股淨值多少?
A: (20+3-0=23), 期末淨值23元。 ROE = 3/23 = 13%

  • 保留盈餘比率 = 1-配息率, 在這邊的1是指當年度的EPS,以上例=(1- 2/5)=60%
  • 保留盈餘在股東權益內會使淨值增加, 資產=負債+股東權益,假設負債沒增加,當股東權益增加的時候,總資產也同步增加。
  • 而ROE = 稅後淨利/平均股東權益,當保留盈餘增加,股東權益也增加。
  • 如果稅後淨利沒成長,ROE就會持平或下滑,如果稅後淨利增加的幅度大過保留盈餘的幅度,ROE就持續增長。

一款像"拼貼趣" 照片拼湊的電腦版軟體- collageit

這款軟體我在重灌狂人的部落格看到的, 就像他說的collage這個字是拼貼的意思,有種藝術呈現手法也叫collage,就是使用不同形式、顏色、材質或意象的東西拼貼成一幅別具特色的拼貼畫,呈現出不同以往的特殊風格與趣味。由於手機上的拼貼趣App現在也超夯的,我一直在找電腦上也可以執行的拼貼趣電腦版, 但很可惜拼貼趣似乎沒有出電腦版! 姑且就將就使用 collageit 吧!

預覽其中兩種效果:

(輸入註冊碼後變成正式版, 所以右下角浮水印消失)

不小心看到有 collageit 註冊碼(出處)..

2016/06/13

Win7- 在startup去設定HOMEDRIVE,HOMEPATH , HOME等去設定環境變數

引用自superuser, 一個範例去設定系統的環境變數在windows7或winXP上!

  1. If you are on Windows 7, you can skip this step. If you are on Windows XP, download and installWindows XP Service Pack 2 Support Tools which contains SETX, a utility, described on SS64and technet, that lets you set permanent system and user variables. You must have administrative rights to set global system variables. The basic usage is SETX <variable> "<value>" [-m].
  2. Add the following script to your startup folder – W7: "C:\Users\<username>\Start Menu\Programs\Startup" and XP: "C:\Documents and Settings\<username>\Start Menu\Programs\Startup".
    SETX HOMEDRIVE %SYSTEMDRIVE% -mSETX HOMEPATH "\Documents and Settings\%USERNAME%" -mSETX HOMESHARE "\\<server>\<share>" -mSET HOME=%SYSTEMDRIVE%\Documents and Settings\%USERNAME%SETX HOME "%HOME%"SET TEMP=%HOME%\Local Settings\TempSETX TEMP "%TEMP%"SETX TMP "%TEMP%"

Note: SETX variables are permanent, but are not available until after the script runs, so use SET to create temporary variables in your script. Also uses double quotes around the value you want to set your variable to in case it has spaces, but this is not necessary for SET. Machine variables are set with the -m option; user variable is the default. Windows 7 has many more options and uses /instead of -.

%systemdrive%是什麼東東啊?

引用自: pczone
Q: 所謂:本機硬碟的 %systemdrive%\Sysprep 資料夾中, 本機硬碟應是指c:吧, 而我不明白的是,%systemdrive%是什麼東東啊?且要把它建立在 C 的哪個目錄下才行呢?請各位前輩教教我,謝謝!!
A: 這意思應是在必須在 C:\ 下建立一個名為Sysprep 的資料夾吧…….預設的 %Systemdrive% 指的是 C:,進入 DOS 模式,使用 Set 指令,即可看到類似
Systemdrive=c:
Systemroot=c:\winnt
……..

2016/06/01

如何使用 Windows Event Viewer 去看系統發生什麼事 ?

這次遇到某個BT module在系統開完機之後, 會發生yellow band在裝置管理員裡面, 方法之一就是去看 system event log 看看發生什麼事!

微軟教學: 事件記錄檔中顯示什麼資訊? (事件檢視器)

What information appears in event logs? (Event Viewer)

您必須以系統管理員的身分登入,才能執行這些步驟。如果您並非以系統管理員的身分登入,則您只能變更套用到使用者帳戶的設定,且可能無法存取部分事件記錄檔(event logs)。

事件記錄檔(event logs)是很特殊的檔案,其中記錄電腦上的重要事件,像是使用者何時登入電腦或 程式何時發生錯誤。發生這類型的事件時,Windows 會在事件記錄檔中記錄事件,您可使用 [事件檢視器Event Viewer] 來讀取此記錄檔。進階使用者可能會發現,事件記錄檔中的詳細資料有助於 Windows 及其他程式問題的疑難排解。

[事件檢視器Event Viewer] 以幾個不同記錄檔來追蹤資訊。Windows 記錄檔包含:

  • 應用程式 (程式) 事件(Application (program) events. )。依嚴重性為標準,事件可區分為「錯誤」、「警告」或「資訊」( error, warning, or information)。錯誤指的是顯著的問題,像是資料遺失。而警告指的是本身並非十分顯著、但以後可能會發生問題的事件。資訊事件則是描述程式、驅動程式或服務的成功操作。
  • 安全性相關事件(Security-related events)。這些事件稱為「稽核audits」,可根據事件狀況而說明成功或失敗,例如使用者嘗試登入 Windows 是否成功。
  • 設定事件(Setup events)。設定為網域控制站的電腦會在此顯示額外的記錄檔。
  • 系統事件(System events)。系統事件由 Windows 與 Windows 系統服務記錄,可區分為錯誤、警告或資訊。System events are logged by Windows and Windows system services, and are classified as error, warning, or information.
  • 轉送的事件(Forwarded events)。這類事件由其他電腦轉送到此記錄檔。These events are forwarded to this log by other computers.

應用程式及服務記錄檔的內容相當多樣。包含在電腦上執行之程式的個別記錄檔,以及與特定 Windows 服務相關的詳細記錄檔。

  1. 開啟 [事件檢視器],請依序按一下 [開始] 按鈕 [開始] 按鈕的圖片、[控制台]、[系統及安全性 System and Security] 及 [系統管理工具Administrative Tools],然後按兩下 [事件檢視器Event Viewer]。‌ 需要系統管理員權限如果提示您輸入系統管理員密碼或確認,請輸入密碼或提供確認資訊。
  2. 按一下左窗格中的事件記錄檔。
  3. 連按兩下事件以檢視事件的詳細資料。

Dale Powell教學影片: How to Use the Windows Event Viewer

Just another brief How-To video about how to use the Windows Event Viewer to check for application and system warnings and errors.

1. 如何開啟
2. 通常會去看windows底下的log
3. 發現error, 可以把描述的關鍵字google一下
4. 確保下次reboot可以看見新log, 可以執行 clear log 清除

2016/05/27

版本控制工具 SVN - 常用的基本指令 / 狀態表示

SVN 是一個軟體協同開發時的版本控制工具, 之前比較常用的git, 最近手上案子滿多是用SVN, 也是一個很熱門的版本控制。

Windows平台上安裝SVN Server 常見的五種方式:

SVN服務端subversion服務器程序在windows下共有5個下載版本,分別是:Collabnet,SlikSVN,VisualSVN,WANdisco,Win32Svn。(參考)
其中,

  • * CollabNet是功能最強大的,因為svn的創始者就是CollabNet,不過這個版本因為功能最多,所以整個軟件包含也是最臃的,安裝包就有100多M,而且因為是運行在JAVA平台上 ,要佔用很大的內存資源;
  • * SlikSVN和Win32Svn這兩個基本一樣,都只有svn的內核,沒有界面,也就是使用的時候只能用命令行操作。這兩個稍微有些區別,比如win32Svn了和apache的庫文件,而slikSVN沒有 ;
  • * VisualSVN是最傻瓜似的svn,安裝和配置都有圖形界面,操作起來很方便;
    可以使用collabNet,服務端是可視化的,比較方便

首先, 說明 Trunk、Tags、Branches 的差別

Trunk : 主要開發
Tags : 當要 Release 時,就標個Tag。
Branches : 當要加新功能,或是Bug fix時,將 Trunk 複制一份到 Branches 再繼續開發,之後再 Merge 回Trunk

而以上三個目錄, 不是憑空生出來的! 有兩種方式可以建立:
1. 自己手動建立 (參考)

$ mkdir MyProject
$ mkdir MyProject/trunk
$ mkdir MyProject/branches
$ mkdir MyProject/tags
svn import MyProject svn://server_address/svn_path/repository/MyProject -m “info”

2. 透過TortoiseSVN 建立 (參考1, 參考2: 用tortoiseSVN比較tags之間差異)
預設的floder stucture 就是有 trunk, branches, tags目錄

然後, 要知道常用 SVN 的指令

  • checkout (co) : 將SVN上的資料checkout出來
    svn checkout svn+ssh://trac.net/home/svn/repos/branches/life
    svn co http://SVN_PATH/svn_project
    svn co file:///SVN_PATH/svn_project
    svn co -r 12 file:///var/lib/svn/dev/projects # 出第12版的 projcets code
  • update (up) : 更新為SVN上的最新版本
    svn up
  • commit (ci) : 將目前有修改的 commit 到 SVN
    svn ci (全部有修改的都會commit)
    svn ci file1 file2 file3 (只將file1 2 3 commit)
  • add : 將檔案或目錄加進 SVN ,之後還要再 commit 才會真的加進 SVN
    svn add file
    svn add folder
  • del, rm : 將檔案或目錄刪除,之後還要再 commit 才會真的從 SVN 刪除
    svn del file 或 svn rm file
    svn del folder 或 svn rm folder
  • mv : 改檔名,但之前的紀錄還是會繼續保留
    svn mv old_file new_file
  • status (st) : 從上次up後,看目前檔案/結構 跟 SVN 線上的版本有哪些不同
    svn st
  • revert : 還原成前一個版本的狀態
    svn revert file
    svn revert folder
    svn revert *
    SVN_CHECKOUT_DIR$ svn revert [file | directory]
  • info : 顯示 SVN 的資訊, 以及trunk/tags/branches目前處於何處的資訊
    ex:

    C:\svn\respoity> svn infoPath: .Working Copy Root Path: C:\svn\client\respoity <=可知道目前處於哪裡 trunk/tags/branchesURL: file:///C:/svn/respoityRelative URL: ^/Repository Root: file:///C:/svn/respoityRepository UUID: xxxxxxxx-xxxx-xxxx-xxxxx-xxxxxxxxxxxxRevision: 10Node Kind: directorySchedule: normalLast Changed Author: YOUR_NAMELast Changed Rev: 10Last Changed Date: 2015-06-11 14:43:20
  • resolved : 如果檔案有conflict,處理完後,要resolved,才可以ci
    svn resolved file
  • diff : 將現在的檔案跟SVN做比較
    svn diff (比對全部)
    svn diff file
    svn diff folder
    svn diff -r 100:101 也可以 101:100
  • export : 將SVN上的資料export出來,不包含.svn
    svn export svn+ssh://trac.net/home/svn/repos/branches/life
  • copy (cp) : 首先是建立一個Branch的方式。
    EX:用 trunk/life 建一份branch 到 branches/life
    svn cp svn+ssh://trac.net/svn/trunk/life svn+ssh://trac.net/svn/branches/life -m ‘create branch’
  • import : 將整個資料匣,加到SVN中。
    EX:將life資料匣,import到SVN的trunk/life
    svn import life svn+ssh://chingwei@trac.net/svn/trunk/life
    EX:
    svn import project_directory http://DOMAIN/svn_project
    svn import project_directory file:///SVN_PATH/svn_project
  • log : 如果沒輸入參數, 預設會把所有 commit log 都列出來
    svn log
    svn log -l 10 # 顯示 10 筆(最新 10筆 Log)
    svn log -c 100 # 顯示 revision 100 的 Logsvn log -v -c 100 # 顯示 revision 100 的詳細 Log
  • lock : 鎖定,這樣別人就沒辦法改了
    svn lock file
  • unlock : 解除鎖定
    svn unlock file
  • List: (list 可簡寫成 ls), 看上面有哪些檔案/資料c
    svn ls http://SVN_PATH/svn_project
    svn ls file:///SVN_PATH/svn_project
  • svn cleanup — 遞歸清理工作副本。刪除未完成的工作副本鎖定,並恢復未完成的操作
    $ svn cleanup
    $ svn cleanup /path/to/working-copy

每列前面的大寫字母表示: SVN 狀態

? – 是新的檔案,不在SVN裡
A – 新增的檔案
C – 檔案跟SVN的不同,合併失敗,要手動處理
D – 移除的檔案
M – 有修改過
U – 有更新
G – 跟SVN上的檔案不同,但合併成功。

如何取消(退回)對程式碼的修改 ?

第一種情況:改動沒有被提交(commit)。
這種情況下,使用svn revert就能取消之前的修改。
svn revert用法如下:

  • # svn revert [-R] something
    其中something可以是(目錄或文件的)相對路徑也可以是絕對路徑。
    當something為單個文件時,直接svn revert something就行了;當something為目錄時,需要加上參數-R(Recursive,遞歸),否則只會將something這個目錄的改動。
    在這種情況下也可以使用svn update命令來取消對之前的修改,但不建議使用。因為svn update會去連接倉庫服務器,耗費時間。
    注意:svn revert本身有固有的危險,因為它的目的是放棄未提交的修改。一旦你選擇了恢復,Subversion沒有方法找回未提交的修改。

第二種情況:改動已經被提交(commit)。
這種情況下,用svn merge命令來進行回滾。
回滾的操作過程如下:

  • 1、保證我們拿到的是最新代碼:
    svn update
    假設最新版本號是28。
  • 2、然後找出要回滾的確切版本號:
    svn log [something]
    假設根據svn log日志查出要回滾的版本號是25,此處的something可以是文件、目錄或整個項目
    如果想要更詳細的了解情況,可以使用svn diff -r 28:25 [something]
  • 3、回滾到版本號25:
    svn merge -r 28:25 something
    為了保險起見,再次確認回滾的結果:
    svn diff [something]
    發現正確無誤,提交。
  • 4、提交回滾:
    svn commit -m “Revert revision from r28 to r25,because of …”
    提交後版本變成了29。
  • 將以上操作總結為三條如下:
    1. svn update,svn log,找到最新版本(latest revision)
    2. 找到自己想要回滾的版本號(rollbak revision)
    3. 用svn merge來回滾: svn merge -r : something

2016/05/23

NoteBook Battery 筆電電池的使用及保養方式概論

如果我有插電(用變壓器直接機筆電)時,筆電的電池需要拔下來嗎?
因為現在的筆電電池都有過充保護,電池在充滿電後就會自動斷開,所以不用擔心什麼。反倒是,你把筆電電池把下來時,如果突然停電,這時你資料的損失絕對比電池的損失還嚴重吧!如果你是長時間插電的話,這時倒是可以考慮把電池拔下。長時間是指多久呢?網友是提出一個大略的時間:一個月。但最好是不要充飽後才拔下來,電池長時間閒置時最佳的保存電容量是 30~50% 之間。

剛買新機時,電池需要充滿XX小時(xx為任意數)嗎?
因為現在的筆電電池都有過充保護,所以充滿xx小時也是沒什麼意義的!因為他充滿電後,就會自動斷開,這時就算你充再多的電也是沒用的。

電池需要重複充放幾次嗎?
有人說要將剛到手的電池重複充放幾次,這樣才能要活化電池。但…你在用它時,他就會活化了,其實沒必要特意去充放幾次來活化!另一方面,電池的壽命是以 cycle count 來計算的(cycle count 簡單說,就是”充-放”這樣的流程次數),一般的鋰電池大約有500次的壽命,所以多餘的充放動作只是在消耗它的壽命。(但是聽說,常使用電池的話,壽命常常會高於這個數字。)

該如何保養筆電的電池呢?
基本上,就是該用就用!太過在意,反而使用起來綁手綁腳吧,不是嗎!?如果你想要讓電池的壽命更加延長的話,建議電量低到20%即可充電,80%停止,這個方法可以用來減少 charge cycle,以延長電池的壽命。但這僅適用於沒有那麼長時間需求的使用者比較有效。因為現在廠商大多都有提供軟體可供設定,所以這個動作很容易設定,如果沒有的話就要手動了,甚至有些廠商也有他自己預設的延伸電池壽命的充電方式,所以這也不用太擔心。如果你是長時間不使用電池的人,那麼保養方式請參考上面一直插電的保養方式。

結論…
雖然鋰電池的壽命雖然是以 cycle count 來計算,但這只是個參考指標,並非絕對,使用上不需要吝惜充電次數,只要不要電量太低才充電,或是充飽卻長時間閒置的話,電池衰退的情況並不會很嚴重。
此外,有人提出電池衰退的主要原因還是 cell(電池)本身的品質,雖然可以在使用方式上減少損耗,但是 cell 的先天條件還是決定性的關鍵。

結論的結論:
就跟我上面跟跟說得一樣,該用的時候就用,不需要給自己什麼壓力!要不然,這樣不是反而失去了用筆電電池的意義了嗎!?

2016/05/12

該如何設定G4鬧鐘的音量與鈴聲? 因為原本太大聲了...

Q: 最近每天早上都被G4的鬧鐘嚇醒, 因為原廠預設的音量太大聲了! 我把手機音量設到最小也沒用, 不知道哪設定鈴聲音量?

A: 跟我一樣, 一開始我也找不到! 但其實在設定鬧鐘細節的頁面往下拉…就會看到原來還有其他選項! 設定鬧鐘時間時,螢幕往下移動有暫停時間.鬧鐘提示音及鬧鐘音量等可選擇。

(引用自 mobile01)