• TWMSHackVersion 新楓之谷外掛版本查詢

    支援多平台的新楓之谷外掛版本查詢程式!
    目前支援亞台龍欸MapleMoonMSReggae的版本查詢,歡迎其他外掛作者留言加入。

    Android

    Imgur

    下載點

    版本 檔名 大小 下載點 掃毒報告
    1.0 TWMSHackVersion_1.0.apk 6.1 MB MEGA VirusTotal
    1.1 TWMSHackVersion_1.1.apk 6.1 MB MEGA VirusTotal
    1.2 TWMSHackVersion_1.2.apk 6.1 MB MEGA VirusTotal
    1.3 TWMSHackVersion_1.3.apk 6.18 MB MEGA VirusTotal
    1.4* TWMSHackVersion_1.4.apk 6.43 MB MEGA VirusTotal

    Windows

    Imgur

    下載點

    版本 檔名 大小 下載點 掃毒報告
    1.0 TWMSHackVersion_1.0.zip 2.36 MB MEGA VirusTotal
    1.1 TWMSHackVersion_1.1.zip 2.39 MB MEGA VirusTotal
    1.2 TWMSHackVersion_1.2.apk 2.35 MB MEGA VirusTotal
    1.3 TWMSHackVersion_1.3.apk 2.38 MB MEGA VirusTotal
    1.4* TWMSHackVersion_1.4.apk 2.46 MB MEGA VirusTotal

    OS X

    Imgur

    下載點

    應該沒人需要吧!?

    iPhone

    Imgur

    下載點

    404 Not Found.
    恕不提供

    Work In Progress

    1.5

    1. 直接下載外掛(需要冰楓論壇帳號,有此需求才做)
    2. Move Data Location(0%)

    更新紀錄

    1.4

    1. 優化讀取中動畫
    2. 使用人數統計
    3. 新的版本查詢演算法
    4. 查詢「新楓之谷」版本可查詢修訂版本
    5. 新的檢查更新演算法
    6. 修正 Windows 版本下載到 Android 版本更新問題
    7. Added minimum accepted version
    8. 點擊可連結到冰楓論壇帖子

    1.3

    1. 效能優化
    2. 新的版本查詢演算法
    3. 修復查詢「MSReggae」版本
    4. 加入「新版本提示顯眼效果」
    5. 「查詢伺服器狀態」加入燈號顯示
    6. 開始與「冰楓論壇」進行廣告合作

    1.2

    1. 效能優化
    2. 新增讀取中動畫
    3. 修復查詢「MapleMoon」版本
    4. 新增檢查更新功能
    5. 新增下載更新功能
    6. Android 版本加入「讀取外部儲存空間」權限以儲存設定至SD卡

    1.1

    1. 修正錯字
    2. 新增查詢「新楓之谷」版本
    3. 新增「查詢伺服器狀態」功能
    4. 修改圖示
    5. 修改 Android APP 顯示名稱

    1.0

    1. 初次發行
    2. 新增查詢「亞台龍欸」版本
    3. 新增查詢「MapleMoon」版本
    4. 新增查詢「MSReggae」版本
  • C++Builder XE8 Firemonkey Android 開啟 URL 方式

    Firemonkey 在 Android 中要開啟 URL 的方法只能從呼叫 Android API 來實現,有點像在 Windows 上要用 ShellExecute 一樣。
    網路上幾乎都是Delphi的文件,只能說C++Builder這種新的資訊實在很少,都要先看懂Delphi然後參考其他程式碼才能寫 C++Builder 的版本。

    #ifdef __ANDROID__
    #include <Androidapi.JNI.GraphicsContentViewText.hpp>
    #include <Androidapi.Helpers.hpp>
    #endif

    #ifdef __ANDROID__
    _di_JIntent Intent =
    TJIntent::JavaClass->init(TJIntent::JavaClass->ACTION_VIEW,
    TJnet_Uri::JavaClass->parse(StringToJString("http://toby.logdown.com")));
    SharedActivity()->startActivity(Intent);
    #endif

    效果預覽:
    Imgur

    就這樣囉XD!

    別怪我沒有解釋原理,畢竟我也是 Android 新手 programmer 啊!看來還有很長一段路(望)。

    附上 Delphi 的寫法:

    uses
    Androidapi.JNI.JavaTypes, // StringToJString
    FMX.Helpers.Android, // SharedActivity
    Androidapi.JNI.GraphicsContentViewText; // TJIntent

    var
    Intent: JIntent;
    begin
    Intent := TJIntent.Create;
    Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
    Intent.setData(StrToJURI('http://toby.logdown.com'));
    SharedActivity.startActivity(Intent);
    end;

    P.S. 程式碼片段請自行放到 function 內。

    Ref:

  • 當自己嘔心瀝血的研究成果被人拿去利用

    我很久沒上站了,沒上還好,上來就發現不得了了。

    竟看到自己的一份研究成品赤裸裸的在網路上流傳。

    這個作品是當初和一位朋友一起爆肝分析、嘗試、討論,花了非常多時間才有的成就,

    如今被網路上的陌生人,在你面前裝作是你的好友,私底下背叛你,流傳出去。

    有人說,玫瑰帶刺,人心帶私,說的沒錯,今天我懂了。

    在看到自己的成果這樣到處流通,我沒有力氣難過,我沒有力氣生氣……

    你知不知道,無助的感受,看著他們臉上的笑,我真的無能為力。

    原本期待不久的將來,把我的作品完善後,要由我自己來向大家介紹,

    今天看這無數的陌生人,享用著我的血肉,絲毫一點感恩都沒有,唯恐自己沒得到利益,

    有的拍影片向人們炫耀,有的在社群網站上囂張,有的,還把它當作是自己做的作品,

    是這位朋友,當初一起研究的朋友,給了牠,非常確定,是從牠那流傳出去的,

    我沒跟這位朋友多說什麼,我也知道錯不能全怪他,可能要怪我自己吧。

    在我忙碌奔波終於告一段落,想趁機放鬆,順便重拾興趣,正樂的開心,竟然在這天又讓我跌回谷底。

    對於那個人,我也不知道要向他說什麼,謝謝嗎?謝謝他造福群眾,謝謝他讓我這麼無助。

    他得到的,是來自朋友的讚賞,他失去的,只是我對他的信任,對他而言,再渺小不過,

    不痛,不癢,不當一回事,輕易的背叛朋友,這社會上就是會有這種人,還有人會感謝他,

    我卻只能眼睜睜看他,享譽一切,而我,從前到現在,卻一直都在失去,什麼時候,我能得到我想要的。

    夜深,今天已身心俱疲,實在沒多餘的心力再去想這件事了,我真的很失望。

    Toby 2015/4/3

  • Elementary OS + Windows 7

    放假後,終於有時間把整個硬碟重新分割重新安裝 Windows 和 Linux 雙系統。之前一直都在用 elementary OS,這篇純粹是想好好筆記我對電腦做了什麼。

    Prepare

    因為我的筆電有使用NVIDIA Optimus技術,必須先到BIOS設定中將顯示卡切換成Integrated,否則進入Live CD只會一片黑。
    另外也可以利用修改啟動參數加入nomodeset來暫時解決這個問題,不過安裝完還是得改設定才能繼續。

    分割硬碟

    首先進入Live CD先用Gparted做好分區規劃。安裝Windows 7的地方必須保留2個Primary的空間,否則安裝時會出現「安裝程式無法建立新的系統磁碟分割,也找不到現有的系統硬碟分割」。

    1
    2
    3
    4
    5
    6
    7
    /dev/sda1    120 GiB             ntfs    Primary    Windows 7
    /dev/sda3 100 GiB ntfs Primary
    /dev/sda4 Extended
    /dev/sda5 300 GiB ntfs Logical
    /dev/sda6 * 500 MiB /boot ext4 Logical
    /dev/sda7 30 GiB / ext4 Logical elementary os
    /dev/sda8 50 GiB /home ext4 Logical

    Linux

    安裝 elementary OS

    然後開始安裝 elementary OS 。

    安裝完畢

    安裝完畢重新開機登入,Ctrl+Alt+T open Terminal

    1
    2
    sudo apt-get update &&
    sudo apt-get upgrade

    安裝 Gedit

    1
    sudo apt-get install gedit

    NVIDIA Optimus

    https://zh.opensuse.org/SDB:Bumblebee
    https://wiki.ubuntu.com/Bumblebee
    http://yblog.org/archive/index.php/linux_Bumblebee_3_201208
    限使用 NVIDIA Optimus 技術的顯卡。

    1
    2
    3
    sudo add-apt-repository ppa:bumblebee/stable &&
    sudo apt-get update &&
    sudo apt-get install bumblebee bumblebee-nvidia

    亮度調整修正

    1
    gksudo gedit /etc/default/grub

    將:

    1
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

    改為:

    1
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_backlight=vendor"

    存檔。

    1
    sudo update-grub

    重新開機。

    安裝 Firefox

    1
    sudo apt-get install firefox

    安裝 Google Chrome

    https://www.google.com/chrome/

    1
    2
    3
    cd ~ &&
    wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb &&
    sudo dpkg -i google-chrome-stable_current_amd64.deb

    修復 Scratch

    內建的文字編輯器 Scratch 在更新後可能有打不開的問題,重新開機後如還是不行,重新安裝就能修復。

    1
    sudo apt-get install --reinstall scratch-text-editor

    安裝 rime 輸入法框架

    https://code.google.com/p/rimeime/wiki/RimeWithIBus

    1
    2
    3
    4
    5
    6
    7
    8
    9
    # this repo provides libkyotocabinet, libgoogle-glog for Ubuntu 12.04;
    # these packages are officially supported since Ubuntu 12.10.
    sudo add-apt-repository ppa:fcitx-team/nightly

    # providing libyaml-cpp0.5, librime, rime-data, ibus-rime
    sudo add-apt-repository ppa:lotem/rime

    sudo apt-get update
    sudo apt-get install ibus-rime

    設定注音輸入

    https://gist.github.com/lotem/2309739

    1. 建立設定檔:
    1
    vi ~/.config/ibus/rime/default.custom.yaml
    1. a,然後貼上以下內容:
    1
    2
    3
    patch:
    schema_list:
    - schema: bopomofo_tw # 注音(繁體順位)
    1. Esc接著輸入:wq
    2. iBus偏好設定、輸入法、自訂、加入Rime,重新啓動iBus。

    Rime 注音輸入簡介:https://www.ptt.cc/bbs/EZsoft/M.1341225649.A.677.html
    修正 Rime 注音繁簡順位(已不需要):https://www.ptt.cc/bbs/IME/M.1345036498.A.66E.html

    安裝 Elementary Tweaks

    安裝 Elementary Tweaks 是為了能夠自訂界面,比如顯示縮小按鈕等。

    1
    2
    3
    sudo apt-add-repository ppa:versable/elementary-update &&
    sudo apt-get update &&
    sudo apt-get install elementary-tweaks

    Elementary Tweaks

    1. 系統設定值中選擇Tweaks
    2. General > Appearance > Button Layout > Minimize Right(依照自己喜好更改)。
    3. Applications > Plank > Hide Mode > Intelligent hide(推薦底下Dock用智能隱藏)。
    4. Applications > Files > Single Click 關閉(較習慣雙擊開啟)。
    5. 如想恢復預設值,按一下右邊的按鈕即可。

    設定桌面

    1. 系統設定值中選擇桌面
    2. 桌布中更改桌布。
    3. 熱角中設定左上角顯示應用程式選單

    安裝 VLC Player

    1
    sudo apt-get install vlc

    安裝 Spotify

    https://www.spotify.com/tw/download/previews/

    1
    2
    3
    4
    sudo apt-add-repository -y "deb http://repository.spotify.com stable non-free" &&
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 94558F59 &&
    sudo apt-get update &&
    sudo apt-get install spotify-client

    安裝 Sublime Text 3

    http://www.sublimetext.com/3

    1
    2
    3
    cd ~ &&
    wget http://c758482.r82.cf2.rackcdn.com/sublime-text_build-3065_amd64.deb &&
    sudo dpkg -i sublime-text_build-3065_amd64.deb

    安裝 Package Control

    https://packagecontrol.io/installation

    1. 在 Sublime Text 按下Ctrl + ` 或 View > Show Console
    2. 貼上(請從上面官方連結中複製,因官方表示以下code會隨更新而改變):
    1
    import urllib.request,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
    1. Enter
    2. 依照提示重新開啟。

    安裝 Plugins

    1. 在 Sublime Text 按下 Ctrl + Shift + P 或 Preferences > Package Control
    2. 輸入Install Package按下Enter。
    3. 輸入套件名稱並安裝。

    ConvertToUTF8

    • 解決 Sublime Text 3 預設不支援 Big5 與其他 CJK 編碼的問題。
    • 安裝完後,至 Preferences > Package Settings > ConvertToUTF8 > Settings - Default,將BIG5和GBK對調存檔。

    Emmet

    • 前端工程師必備套件。
    • 需重新開啟一次。

    HTML-CSS-JS Prettify

    • 好用的自動格式化套件。

    • 需要安裝 Node.js 否則會出現Node.js was not found in the default path. Please specify the location.訊息。

    • 用以下方法安裝後,設定 Node.js 路徑"linux": "/usr/bin/node",

    • 測試(Ctrl + Shift + H):

      1
      <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body></body></html>

      安裝 Node.js

      1
      sudo apt-get install nodejs

    安裝 Git

    1
    sudo apt-get install git

    Sublime Text 3 中文輸入

    由於我用的是iBus,沒辦法用網路上另一種更好的方法來解決(fcitx可用),只能用InputHelper

    1
    2
    cd ~/.config/sublime-text-2/Packages &&
    git clone https://github.com/xgenvn/InputHelper.git

    按 Ctrl + Shift + Z 即可呼叫輸入框。

    安裝 LibreOffice

    1
    2
    3
    sudo add-apt-repository ppa:libreoffice/ppa &&
    sudo apt-get update &&
    sudo apt-get install libreoffice

    清理垃圾

    1
    sudo apt-get clean all

    Windows

    安裝 Windows 7

    然後開始安裝 Windows 7。

    安裝完畢

    安裝完畢先安裝驅動程式,然後開始 Windows Update 更新。

    安裝 Mozilla Firefox

    當然還有一件事很重要,就是用IE下載別的瀏覽器。這裡並不是故意這樣做,是IE還沒更新到10以上不會有人想拿他來瀏覽現今的網站。而且Windows沒更新完也無法安裝IE11,怪我囉?
    http://moztw.org/

    安裝 Google Chrome

    https://www.google.com/chrome/

    安裝 7-Zip

    http://www.7-zip.org/download.html

    安裝 K-Lite Codec Pack

    http://www.codecguide.com/download_kl.htm

    安裝 HashTab

    http://implbits.com/products/hashtab/

    系統調

    工作列及開始功能表內容

    1. 工作列 > 右鍵 > 內容
    2. 工作列 > 關閉 Aero Peek
    3. 開始功能表 > 自訂
    4. 下載 > 以連結顯示
    5. 取消 使用大圖示
    6. 音樂 > 永不顯示
    7. 勾選 執行命令
    8. 遊樂場 > 永不顯示
    9. 取消 預設程式
    10. 取消 說明

    檔案總管

    1. 進入檔案總管
    2. 組合管理 > 資料夾和搜尋選項
    3. 檢視
    4. 取消 隱藏已知檔案類型的附檔名
    5. 顯示隱藏的檔案、資料夾或磁碟機

    1. 控制台
    2. 檢視方式:大圖示
    3. 程式和功能
    4. 開啟或關閉 Windows 功能
    5. 取消 Tablet PC 元件
    6. 取消 Windows 小工具平台
    7. 取消 遊樂場
  • 隱藏「我已年滿18歲」

    剛剛在OpenUserJS上踢到有趣的東西,I am over 18腳本,一看發現是台灣人寫的XD,針對幾個台灣人常上的網站,像是PTT、伊莉、卡提諾論壇等,隱藏出現未滿18歲不得觀看的警告。有時候在看一些別人分享的文章,點進去卻出現「您是否已滿18歲」的畫面,雖然已經成年了,出現這個畫面有時候還是會覺得尷尬,因為內容不一定是18禁的東西,卻因為網站分級設定而要先通過這關,所以這個腳本對我來說很不錯!

    安裝網址:
    https://openuserjs.org/scripts/tsaiid/I_am_over_18

  • 各種UserScripts

    由於已經習慣自己控管哪些JavaScript要不要執行,對於一些需要廣告正常顯示才能正常操作的網頁,就必須自己寫Script來bypass。
    把腳本新增到Greasemonkey即可。隨手寫寫,隨手貼貼,自行測試。

    bingfeng去除帖子獎牌

    // ==UserScript==
    // @name Bingfeng
    // @namespace toby
    // @include http://www.bingfeng.tw/*
    // @include http://bingfeng.tw/*
    // @version 1
    // @grant none
    // ==/UserScript==

    (function () {
    obj = document.getElementsByClassName('md_ctrl');
    for (i = 0; i < obj.length; i++)
    {
    obj[i].parentNode.removeChild(obj[i]);
    }
    window.alert = function() { return false; }
    })();

    VoiceTube 免登入

    「VoiceTube 影音字典」正式上架!免費、無廣告、免登入,字典透過影片例句的結合,使學習更快樂又有趣!

    // ==UserScript==
    // @name VoiceTube Skipper
    // @namespace toby
    // @include https://tw.voicetube.com/videos/*
    // @version 1
    // @grant none
    // ==/UserScript==

    document.getElementById('loginModal').remove();
    document.getElementsByClassName('modal-backdrop fade in')[0].remove();

    保持登入

    在做備審資料一段時間後就被登出覺得煩嗎?每分鐘都重新整理一下來保持新鮮吧!
    注意:如果要上傳資料,請先停用腳本,重新整理一次之後再進行,以免遺失資料或上傳失敗。
    使用本腳本請自行承擔一切後果,如有遺失資料請自行負責。
    超過系統開放時段請勿繼續使用,否則後果自行負責。

    // ==UserScript==
    // @name 無限時審查資料
    // @namespace toby
    // @include http://140.123.8.222/StuUpload/012_main.php
    // @version 1
    // @grant none
    // ==/UserScript==
    setInterval("location.reload()", 60*1000);
  • 取出Gamania P2P 遊戲下載器種子檔?

    玩楓之谷的人都知道,官方下載遊戲有兩種方式,一是直接下載,另一種就是用P2P下載器。
    偶爾會用BT的我好奇,能不能夠把P2P下載器中的種子檔(.torrent)取出來,用習慣的Client來下載?

    在開始之前,我已閱讀並同意「遊戲橘子點對點檔案下載服務合約書」,並在此聲明,本文僅作為學術研究一用,僅以探討點對點通訊的運作方式為基礎,在無任何對「遊戲橘子點對點檔案下載」軟體進行破解、破壞、修改或逆向工程,無任何干擾其他使用者正常使
    用該服務之行為的規範下作學術研究之分享。「遊戲橘子點對點檔案下載軟體」及「遊戲橘子」商標為「遊戲橘子數位科技股份有限公司」所有。

    當我們在下載BT時,Client會定時向tracker發出請求,以取得使用者列表、peer數量、seed數量等重要資訊,有這些資訊才得以與他人進行P2P點對點通訊。而發出請求最常見就是HTTP Get方式,因此我們可以先分析request header中的各項參數。


    由這張圖上可發現,這是很常見的BitTorrent request,其中Get parameter中有幾項是我們感興趣的:

    NAME DESC
    info_hash .torrent檔案中info部分的SHA-1校驗值,共20 Bytes。Tracker就是藉由它來辨識種子。
    peer_id 由Client產生的辨識ID,透過它可以得知使用的Client。
    port 監聽的埠。
    uploaded 已上傳的大小。
    downloaded 已下載的大小。
    left 剩餘的大小。

    而只要有info_hash就能夠產生一個magnet連結,讓支援magnet的client直接從DHT中抓取種子檔案。
    一個簡單的磁力連結格式是:

    magnet:?xt=urn:btih:INFO_HASH&tr=TRACKER_URL

    要填入正確格式的INFO_HASH必須先將info_hash解碼,其是在這裡只是很簡單的轉換成HEX而已。

    J%07%d4%a1%a8%0d%15N%d80%d2%8e%10p%02%93%1fY%dah

    先在%??左右插入空格。

    J %07 %d4 %a1 %a8 %0d %15 N %d8 0 %d2 %8e %10 p %02 %93 %1f Y %da h

    然後將非%??用以ASCII轉換成HEX。

    `4A` %07 %d4 %a1 %a8 %0d %15 `4E` %d8 `30` %d2 %8e %10 `70` %02 %93 %1f `59` %da `68`

    再把所有的非HEX字元移除。

    4A07d4a1a80d154Ed830d28e107002931f59da68

    大小寫一致化。

    4a07d4a1a80d154ed830d28e107002931f59da68

    如此一來,INFO_HASH就完成了。

    我們來試試產生的magnet能不能正常使用:

    magnet:?xt=urn:btih:4a07d4a1a80d154ed830d28e107002931f59da68&tr=http%3A%2F%2F210.208.86.28%2Fkawa2%2Fannounce


    Tracker傳回有效,而且看得其他seed,說明了這個hash是有效的。
    不過,client卻無法抓取torrent的其他資訊,連檔案清單也是空白的,因為這個種子不在DHT上。

    這下子就必須分析下載器,看看能不能從memory中找到一些蛛絲馬跡。
    不過在這之前,還得先做好功課,認識一下torrent檔案的格式。
    Torrent檔案的內容用的是Bencode邊碼,同時也是 BitTorrent 用在傳輸資料結構的編碼方式
    由四種型態就足以構成一個正確且有效的torrent檔案,分別為integer(I)、byte string(S)、list of values(L)、dictionary(D)。
    詳細的資料結構、組成方式,請大家自行Google,很多文章都講解得很詳細,因此在這裡就不再重覆說明。

    有了對torrent檔案格式的基本概念後,我們就能找找是否有一個torrent檔藏在memory中。
    我們必須選用一個較少重覆且必須存在的一個關鍵字來搜尋,piece length十分勝任。
    在CE中搜尋字串piece length,並瀏覽該處記憶體區域。


    結果十分令人滿意,這是Bencode的邊碼格式。稍微往上瀏覽就能發現一個torrent檔的info。


    找到6:pieces615640:,可以得知從最後的:往後615640 Bytes共有615640/20 = 30782個分塊的SHA-1校驗值。
    計算一下pieces結束的位址在哪:

    02A601D6 + 964D8(615640的16進制表示) = 02AF66AE


    確實在這位址之後一項資料就結束了。
    我們把02A60020 ~ 02AF66BB這段memory保存起來,檢查一下它的SHA-1校驗值。

    SHA-1: 4A07D4A1A80D154ED830D28E107002931F59DA68

    發現了這段memory的HASH和info_hash是一樣的!

    然而我們把它的附檔名直接改成.torrent並開啟卻出現Invalid torrent file!的錯誤訊息。

    怎麼辦?
    記得我們剛剛發現memory的HASH和info_hash是一樣的,但如果你隨便下載一個種子檔,然後用Client去取得它的magnet連結,你會發現,種子的HASH和magnet的INFO_HASH是不同的!
    也就是說,magnet的INFO_HASH並不是整個種子的SHA-1值,而是只有info段的HASH,而目前的資料也都是屬於info段內的資料,缺少了info標記才是造成種子檔案錯誤的原因‧

    而種子除了要有info外,缺少了tracker的announce資料也會無法進行點對點傳輸,所以我們用HEX編輯器來完善torrent檔。
    我們在檔案開頭插入一個dictionary,包含tracker資訊和整個info

    d8:announce36:http://210.208.86.28/kawa2/announce/4:info

    並在檔案結尾插入e來把dictionary關閉

    e

    保存檔案,載入到Client,成功!


    可以正常下載,看得到peer清單、Client以及對方速率。

    本文僅作為學術研究之用,讀者因自身行為而違反「遊戲橘子點對點檔案下載服務合約書」者,一切責任皆請自行負責。

  • PTT推文大師

    因為還不是很習慣PTT的操作,有時候推文時覺得不方便,所以自己做了個小工具,也分享給大家使用,請大家多多捧場。
    目前只有連續推文產生器的功能,希望大家能建議新功能,以及回報使用問題,讓這個小工具能更加完善、好用。

    連續推文產生器可以依據你輸入的PTT ID,將要推文的文字處理成適當的長度,並加入推文代碼,以達成連續推文功能。

    使用方法

    • 連續推文產生器
      1. 先填入你的PTT ID作為計算長度依據。
      2. 將你要推文的文章或娃娃貼到上面的編輯區(可直接按貼上)。
      3. 按下產生
      4. 產生完畢可以先按預覽查看效果。
      5. 複製將推文代碼複製。
      6. 到要推文的PTT文章內按X%呼叫推文,視情況選擇1.值得推薦2.給它噓聲3.只加→註解
      7. 在PTT直接貼上即可。

    關於本程式

    編譯器 壓縮工具
    Embarcadero C++ 6.80 for Win32 UPX 3.91w

    更新紀錄

    1.0

    1. 初版
    2. 連續推文產生器
    3. 檢查版本功能

    下載點

    版本 檔名 大小 下載點 掃毒報告
    1.0 PTTPushMaster_1.0.zip 1.10 MB MEGA VirusTotal
  • 停用 Google Chrome 切換使用者按鈕

    This week, Google Chrome has been updated to 39.0.2171, which enabled a new feature called 'new profile management', and there is a new button displayed on the top right of the browser. Some may not get used to it, so here's the way to disable it.

    Paste the line below and press Enter.

    chrome://flags/#enable-new-profile-management

    It turns out as the following text:

    Enable new profile management system Mac, Windows, Linux, Chrome OS, Android
    Enables the new profile management system, including profile lock and the new avatar menu UI. #enable-new-profile-management

    Then switch 'Default' to 'Disabled' and restart your browser.

    Done.

    Google Chrome 更新到 39.0.2171 後,右上角出現了一個切換帳號的按鈕,這是新的設定檔管理系統,或許有人會覺得不習慣或者礙眼,以下方法教你停用它:

    在Google Chrome網址列貼上這行,按Enter

    chrome://flags/#enable-new-profile-management

    顯示如下:

    啟用新的設定檔管理系統 Mac, Windows, Linux, Chrome OS, Android
    啟用新的設定檔管理系統,包括設定檔鎖定,以及新的顯示圖片選單使用者介面。 #enable-new-profile-management

    將「預設」改為「停用」即可。