日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 下使用 Wine 安装运行 TM2008 Beta 及相关问题解决

發(fā)布時間:2023/12/14 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 下使用 Wine 安装运行 TM2008 Beta 及相关问题解决 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文也同步發(fā)布到 rainux.org:Linux 下使用 Wine 安裝運行 TM2008 Beta 及亂碼、與 Windows 共享聊天記錄等相關問題的解決

?

前言

騰訊已經發(fā)布了官方的 QQ for Linux,雖然有很多問題,例如沒有 amd64 版本,功能太弱,聊天記錄格式與 Windows 下的 QQ/TM 格式不一致等等,但無疑是 Linux 里使用 QQ/TM 最簡單的方案。如果它已經能滿足你的需求了,那么不必浪費時間看本文。

精簡版本

如果你沒時間看我嘮叨,精簡的版本是:TM2008 Beta 運行需要 Unicode 版本的 IE6、rpcrt4.dll、Visual C++ 2005 SP1 運行庫,安裝程序需要 GDI+。不可以使用 IEs4Linux ,因為它安裝的 IE6 及相關運行庫是 Win9x 的 ANSI 版本。必須使用 CrossOver Games 里的 rpcrt4.dll ,然后用 winetricks 安裝 msxml3 gdiplus riched20 riched30 ie6 vcrun6 vcrun2005sp1 即可安裝運行 TM2008 Beta。

詳細版本

只看精簡版沒搞定?請看詳細的(嘮叨的)版本:

?

安裝 Wine,運行一下 winecfg,讓它生成一個干凈的 ~/.wine 目錄。如果要使用已有的 ~/.wine,請先將其備份。同時確保 winecfg 里設置的 Windows 版本至少是 Windows 2000(我用的是 Wine 1.x 默認的 Windows XP)。

?

獲取一份 CrossOver Games 里的 rpcrt4.dll ,將其復制為 ~/.wine/drive_c/windows/system32/rpcrt4.dll(覆蓋已有的文件),運行 winecfg,在 Libraries -> DLL Overrides 里將 rpcrt4 設置為 Native (Windows)。

?

下載 winetricks ,使用它安裝 IE6 和一些重要的運行庫。如果這個過程失敗,刪除 ~/.wine(或者恢復備份的 ~/.wine)并從頭再來。

sh winetricks msxml3 gdiplus riched20 riched30 ie6 vcrun6 vcrun2005sp1

此時如果你有 Windows 上安裝好的 TM2008,它已經可以運行了,但是無法登錄,會提示“網絡連接失敗,請檢查網絡。”。所以還是老老實實用安裝程序裝一次吧。這里有個很莫名的問題,如果直接使用 Wine 運行 TM2008 安裝程序,它很可能會直接崩潰,看不到任何圖形界面的提示。而使用 Wine 運行一個其它的程序,例如 cmd.exe 或者 Total Commander,再用這個程序去啟動 TM2008 安裝程序則不會有任何問題。

中文亂碼(空心方框)問題

好吧,終于看到 TM2008 的安裝界面了,不過很可能你又會頭大了——所有的中文全是空心方框。原因是安裝程序界面的字體是被指定為 Tahoma 的,而實際上 Tahoma 字體并不包括中文字符。有兩個辦法解決,都是 Windows 的技術,把 Tahoma 字體替換成某個中文字體,或者把某個中文字體鏈接到 Tahoma 上。照這兩個片段修改 ~/.wine/system.reg,只需要其中一個。別忘了把中文字體名改成你自己需要的。

[Software\\Microsoft\\Windows NT\\CurrentVersion\\FontSubstitutes] "MS Shell Dlg"="Microsoft YaHei" "MS Shell Dlg 2"="Microsoft YaHei" "Tahoma"="Microsoft YaHei"[Software\\Microsoft\\Windows NT\\CurrentVersion\\FontLink\\SystemLink] "Tahoma"=str(7):"SimSun.TTC,SimSun\0"

最后還必須把你改的中文字體文件符號鏈接到 ~/.wine/drive_c/windows/Fonts 目錄下,不這么做其它軟件都沒問題,就 QQ 或 TM 會亂碼,該死的硬編碼。

查看聊天記錄時的性能問題

好了,現(xiàn)在不會有什么問題阻擋你了,TM2008 Beta 安裝和啟動都非常順利,使用也很穩(wěn)定。甚至 QQ2009 Preview4 都可以安裝并啟動,不過使用時很容易崩潰。但是如果你像我這樣瘋狂地保存了七八年的聊天記錄,你會發(fā)現(xiàn):

  • 每次啟動 TM2008 后第一次給任何人發(fā)消息都會導致 TM2008 失去響應將近 20 秒鐘,之后繼續(xù)發(fā)消息則不會有問題。第一次接收到某人的消息也會同樣如此。
  • 任何試圖查看聊天記錄的操作都會導致 TM2008 消耗 100% CPU 并且很長時間沒有反應,等待足夠長的時間后才可以看到聊天記錄。

這是由于 TM2008 的聊天記錄數據庫使用了 Windows 的 Structured Storage 技術,而其 API 庫 ole32.dll 的 Wine 實現(xiàn)還不完善或者可能性能太低。雖然可以用 winetricks 安裝 dcom98 來獲取一個 Win9x 的 ANSI 版本的 ole32.dll,但它沒法讓 Unicode 版本的 TM2008 運行起來。搜遍了網絡也找不到在 Wine 里使用 Win2k 以上系統(tǒng)的 ole32.dll 的方法。沒辦法,為了保持聊天記錄的一致性,只有兩個選擇。要么不在 Linux 里看聊天記錄;要么把聊天記錄數據庫 Msg2.0.db 備份并從 QQ Profile 目錄(我的文檔\QQ Files\QQ 號碼)里刪除,讓 TM2008 自己生成一個空白的 Msg2.0.db,暫時拋棄歷史包袱,以后再到 Windows 下把新的記錄導出為備份文件后合并到老的數據庫里。

與 Windows 共享聊天記錄

如果你還像我這樣偶爾會切換到 Windows,希望跟 Windows 下的 TM2008 共享聊天記錄數據庫,那么有兩個辦法:

  • 直接在 Linux 里使用 ntfs-3g 讀寫存放 TM2008 聊天記錄的 NTFS 分區(qū)。雖然 ntfs-3g 已經號稱非常穩(wěn)定可靠了,但對于聊天記錄這種極度個人化的數據我還是寧可保守一些。
  • 創(chuàng)建一個 ext2 分區(qū)用來和 Windows 共享數據,在 Windows 下可以用 Ext2 IFS 驅動來訪問它。比起私有文件系統(tǒng) NTFS 的 Linux 版開源驅動來說,當然是開源的 ext2 文件系統(tǒng)的 Windows 版驅動更值得信賴。

用這兩種辦法都需要在 Linux 和 Windows 里創(chuàng)建 QQ Files 目錄的符號鏈接,Linux 里不必說,ln -s 即可。Windows Vista 以前的版本可以用 Junction 來創(chuàng)建 NTFS 上的符號鏈接,Windows Vista 可以用自帶的 MKLINK。

?

對于我這種非筆記本用戶來說使用日志文件系統(tǒng)來抵御意外斷電是必須的。按照 Ext2 IFS 的 FAQ ,它也可以讀寫 ext3 分區(qū)。不過比較新的 Linux 發(fā)行版的 mkfs.ext3 創(chuàng)建的 ext3 分區(qū) Ext2 IFS 是無法訪問的,可能是 ext3 文件系統(tǒng)格式發(fā)生了變化。而 Windows 下一些分區(qū)工具如 Paragon Partition Manager 或 Acronis Disk Director 創(chuàng)建的 ext3 分區(qū)則沒有問題。

參考資料

  • Howto: Office 2007 on Linux with Wine
  • Microsoft Office 2007 Update

總結

以上是生活随笔為你收集整理的Linux 下使用 Wine 安装运行 TM2008 Beta 及相关问题解决的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。