請選擇 進入手機版 | 繼續訪問電腦版

微剋多資訊

 找回密碼
 註冊

Sign in with google

Google帳號登入

搜索

該用戶從未簽到

發表於 2014-9-10 16:25 | 顯示全部樓層 |閱讀模式
本帖最後由 rictirse 於 2014-9-10 16:48 編輯

因Vista導入iCacls存取權限機制,導致無法置換Code Page 950下的C_950.nls
造成Unicode安裝失敗,Unicode也停留在XP時代下的安裝模式,沒有一個新的配套措施
都需要使用手動新增擁有者,來置換C_950.nls,相當麻煩
在2010年時本人就在youtube上放上了Vista安裝補完計畫的教學影片
良久還是不見有人開發安裝版,所以就釋出了這個一件安裝版相容於各Windwos系統x64、x86平台
載點:點我下載
code 一樣開源,有需要的人自取
  1. <font color="#000000">#RequireAdmin
  2. #NoTrayIcon

  3. #Region
  4. #AutoIt3Wrapper_icon=C:\NewDang.ico
  5. #AutoIt3Wrapper_Compression=5
  6. #AutoIt3Wrapper_Res_Comment=Unicode補完計畫
  7. #AutoIt3Wrapper_Res_Description=Unicode補完計畫
  8. #AutoIt3Wrapper_Res_Fileversion=1.0.0.0
  9. #AutoIt3Wrapper_Res_LegalCopyright=噹噹
  10. #EndRegion

  11. Dim $DirPath = "C:\Windows\System32"
  12. Dim $FileName = "C_950.NLS"
  13. Dim $FilePath = $DirPath&"\"&$FileName
  14. Dim $C_950_MD_5 = "7f69955ce72ba9f187a686a637b8ffdd"

  15. If StringInStr ( _MD5 ($FilePath), $C_950_MD_5) Then
  16.         MsgBox ( 0, "", "已安裝過unicode,無須再次安裝。")
  17. Else
  18.         RunWait ( @ComSpec & " /c " & 'takeown /f '&$FilePath&' && icacls '&$FilePath&' /grant administrators:F ', $DirPath, @SW_HIDE)
  19.         FileInstall ( "C_950.nls", $FilePath, 1)
  20.         RunWait ( @ComSpec & " /c " & 'takeown /f '&$FilePath&' && icacls '&$FilePath&' /grant:r administrators:(RX)', $DirPath, @SW_HIDE)
  21.         RunWait ( @ComSpec & " /c " & 'takeown /f '&$FilePath&' && icacls '&$FilePath&' /setowner "NT Service\TrustedInstaller" /C', $DirPath, @SW_HIDE)
  22.         MsgBox ( 0, "Unicode補完計畫", "Unicode補完計畫,已安裝完成,重開機即可。")
  23. EndIf

  24. Func _MD5($sFile)
  25.         $hFile = FileOpen ($sFile, 16)
  26.         $bData = FileRead ($hFile)
  27.         $iLength = BinaryLen ($bData)
  28.         FileClose($hFile)

  29.         $tBuffer = DllStructCreate("byte[" & $iLength & "]")
  30.         $pBuffer = DllStructGetPtr($tBuffer)
  31.         DllStructSetData($tBuffer, 1, $bData)

  32.         $iResult = DllCall ("Crypt32.dll", "int", "CryptHashCertificate", "hWnd", 0, "dword", 0x8003, "dword", 0, "ptr", $pBuffer, "dword", $iLength, "ptr", 0, "dword*", 0)
  33.         $tResult = DllStructCreate ("byte[" & $iResult[7] & "]")
  34.         $pResult = DllStructGetPtr ($tResult)
  35.         $iResult = DllCall ("Crypt32.dll", "int", "CryptHashCertificate", "hWnd", 0, "dword", 0x8003, "dword", 0, "ptr", $pBuffer, "dword", $iLength, "ptr", $pResult, "dword*", $iResult[7])
  36.         If $iResult[0] <> 0 Then Return StringTrimLeft (DllStructGetData ($tResult, 1), 2)

  37.         $tBuffer = 0
  38.         $tResult = 0
  39. EndFunc</font>
複製代碼

本帖子中包含更多資源

您需要 登入 才可以下載或查看,沒有帳號?註冊

x

該用戶從未簽到

發表於 2014-9-10 18:23 | 顯示全部樓層
現在大部分人會裝這個是因為網路上已經有很多裝了這個,並且用了裡面的擴充字來分享的內容

最常見的就是 BBS 上(很久沒玩了,不知道現在的 BBS 程式有沒有更新,以前只能 BIG5)

說他是另類病毒也不為過,用不用見仁見智囉~

用了就變成傳播者了

使用道具

該用戶從未簽到

 樓主| 發表於 2014-9-10 19:48 | 顯示全部樓層
ad6543210 發表於 2014-9-10 18:23
現在大部分人會裝這個是因為網路上已經有很多裝了這個,並且用了裡面的擴充字來分享的內容

最常見的就是 B ...

但是之前的檔案都是用他來命名的=.=
如果不繼續用,啥都看不到了Orz
只能一錯再錯嘍..

使用道具

該用戶從未簽到

發表於 2014-9-10 20:43 | 顯示全部樓層
unicode補完計畫,針對許多早期公司用的資料庫程式,還是很有用的。

就算資料庫及OS支援unocode,但是許多早期的開發程式在無法正確顯示這些非big5支援字時,
unicode補完計畫還是很有用的。

列如VB6的GRID,或搭配Crystal Report 6等報表程式。

使用道具

該用戶從未簽到

發表於 2014-9-10 20:47 | 顯示全部樓層
繁中系統  XP之後都會手動更改權限裝這個東西
資料夾 和 網路很多亂碼才會顯示
我想請教一下   我之前是連SYS 64 也一起替換 只要替換SYS 32的資料夾就好了嗎?(純粹問一下  哈哈)

點評

我只有換 %windir%\system32下的c_950  發表於 2014-9-10 21:30

使用道具

該用戶從未簽到

發表於 2014-9-10 23:21 | 顯示全部樓層
非常實用的補完計劃,收下了.感謝樓主的熱心!!!

使用道具

該用戶從未簽到

發表於 2014-9-11 08:17 | 顯示全部樓層
rictirse 發表於 2014-9-10 19:48
但是之前的檔案都是用他來命名的=.=
如果不繼續用,啥都看不到了Orz
只能一錯再錯嘍..

基本上會有該問題是輸入法的關係(櫻花輸入法)

如果您使用的是網頁上的字複製貼上,都會自動轉換成 unicode 的,裝不裝補完計畫不會被影響

另外可以試試 myrename,本身可以將以前用 big5 寫的檔名轉換回 unicode

點評

OK 有空我再去看看,先感謝你了。  發表於 2014-9-11 16:29
1 0

使用道具

該用戶從未簽到

發表於 2014-9-11 11:42 | 顯示全部樓層
問一下~裝了之後例如簡體或日文的軟體能正常顯示
是這樣的意思嗎?
我到現在還是用AppLocale來開簡體的軟體...不過還是很麻煩

點評

這主要是補BIG5內的日文..所以簡體不適用哦  發表於 2014-9-11 16:28

使用道具

您需要登入後才可以回帖 登入 | 註冊

本版積分規則

Discuz! X

© 2009-2017 Microduo

快速回覆 返回頂部 返回列表