Archive for 資訊科技
Steam 瘋狂特價 EA 週
Posted by essoduke - 2010 年 06 月 17 日 21:11:48 - 103 User Views2010-06-14 到 06-21 為止,每天都有大特價,EA 真是瘋狂…
好期待 NFS Shift 啊,來個 50% off 我就買了!
–
為什麼我沒趕上 BorderLands 的特價?
Sony Ericsson T700 去客製化(Windows Vista / 7 x64)
Posted by essoduke - 2010 年 06 月 14 日 23:41:36 - 198 User Views用了四年多的 K610i 因為原廠電池不敷使用,所以買了一支便宜的 T700 客製機並打算刷回原廠韌體。
這方面的資訊可以參考:
- SonyEricsson 刷機教學(去除惱人的電信業者客製化) – @ New World. New Thinking
- T700徹底去客製化步驟,其他款的手機也可以試看看 (沒有信心的不要自己嘗試) – Mobile01
參考上面兩個連結應該就沒什麼問題,所以詳細過程就不再贅述了。
主要重點在於 Windows Vista/7 x64 的 USB Flash Driver 如果用原 A2 Loader 內的驅動程式會無法安裝。
所以需要額外安裝 x64 版本:
- USB Flash Driver x64(3.15MB – 訊6)
安裝及使用方法如下:
- 按住 C 鍵並連接 USB 傳輸線,Windows 7 會自動安裝驅動程式
- 開啟裝置管理員,在「通用序列匯流排控制器」找到 USB Mass Storage 並點選「更新驅動程式」
- 驅動程式位置指向下載的 x64 下的 inf 檔
- 裝置選擇預設的 USB Flash Drive 即可
- 移除手機傳輸線,拔開電池再裝入
- 開啟 A2 Loader,點選 Filesystem 後,再按住手機 C 鍵並連接 USB 傳輸線
- 正確連結後就可以按照上述文章操作了(建議參照 Mobile01 那篇)
然後就恭賀自己脫離台灣大哥大的魔掌吧!
心得:
其實可以不用傻傻的按著 C 鍵後再開 A2
可以先開 A2 後按 FileSystem 等提示按 C 鍵後再按和插入傳輸線
SEGA 在 Steam 推出懷舊電玩特賣
Posted by essoduke - 2010 年 06 月 13 日 15:07:03 - 77 User Views2010 年 6 月 2 日,SEGA 在 Steam 上推出 11 款 SEGA MD 時期的懷舊電玩,每款只要 2.99 米金(除了音速小子 3D 是 4.99),試圖再搶劫感動一次骨灰遊戲迷們。如果想一次懷舊個夠,也有套件包可供選購!

這次推出的懷舊遊戲有(括號內為台版譯名):

延伸閱讀:【問題】請問有人聽過GAIN GROUND嗎? @ 往日遊戲 哈啦板 – 巴哈姆特

延伸閱讀:現在是懷舊的年代了!Virtual Console老遊戲精選推介

延伸閱讀:Sonic 3D – Wikipedia

延伸閱讀:Still Gaming Reviews Vectorman – YouTube
Shinobi™ III: Return of the Ninja Master (超級忍)

延伸閱讀:061的貼貼貼寫: SEAGA MD – Shinobi III 超級忍

延伸閱讀:Ecco The Dolphin – Wikipedia

延伸閱讀:Shadow Dancer – Wikipedia

延伸閱讀:游戏编年史——历代记——战斧Golden Axe(家用移植版)

延伸閱讀:SEGA MD 遊戲回顧—「Comix Zone」 – GAME!! 遊戲綜合討論 – PALMisLIFE 掌上生活討論區

延伸閱讀:[達人專欄] 【MD】化身野獸 - 獸王記 – melody20410 的部落閣 – 巴哈姆特
[C#] KMClear – 鍵鼠清潔輔助器
Posted by essoduke - 2010 年 05 月 24 日 22:49:22 - 111 User Views首先,這不是能自動幫你清潔鍵鼠的工具 XD
它只是鎖定鍵盤滑鼠讓你在開機的時候可以清潔而已

支援平台:Windows 7, 2008, XP, 2003
環境需求:.Net FrameWork 3.5
檔案下載:KMClear.exe(11KB)
源碼下載:KMClear.zip(112KB – Visual C# 2008 Express)
這類程式有兩個重點要處理,一個是全螢幕執行,另一個就是鍵盤攔截。
全螢幕執行比較簡單,完全不需要 API:
- private void Form1_Load(object sender, EventArgs e)
- {
- this.SetVisibleCore(false);
- this.FormBorderStyle = FormBorderStyle.None;
- this.Left = (Screen.PrimaryScreen.Bounds.Width / 2 - this.Width / 2);
- this.Top = (Screen.PrimaryScreen.Bounds.Height / 2 - this.Height / 2);
- this.SetVisibleCore(true);
- }
另一個則是需要借助 Low-level API 的鍵盤攔截:
- using System;
- using System.Diagnostics;
- using System.Runtime.InteropServices;
- namespace KMClear
- {
- internal class HookAPI
- {
- /* API Assign */
- [DllImport("user32.dll", SetLastError = true)]
- public static extern IntPtr SetWindowsHookEx(int idHook, HookProc lpfn, IntPtr hInstance, uint threadId);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern bool UnhookWindowsHookEx(IntPtr idHook);
- [DllImport("user32.dll", SetLastError = true)]
- public static extern IntPtr CallNextHookEx(IntPtr idHook, int nCode, IntPtr wParam, IntPtr lParam);
- [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
- private static extern IntPtr GetModuleHandle(string lpModuleName);
- public delegate IntPtr HookProc(int nCode, IntPtr wParam, IntPtr lParam);
- private static IntPtr hKeyboardHook = IntPtr.Zero;
- private HookProc KeyboardHookProcedure;
- private const int WH_KEYBOARD_LL = 13;
- private const int WM_KEYDOWN = 0x0100;
- /// <summary>
- /// Start Keyboard Hook Process
- /// </summary>
- public void HookStart()
- {
- if (hKeyboardHook == IntPtr.Zero)
- {
- using (Process curProcess = Process.GetCurrentProcess())
- {
- using (ProcessModule curModule = curProcess.MainModule)
- {
- KeyboardHookProcedure = new HookProc(KeyboardHookProc);
- hKeyboardHook = SetWindowsHookEx(WH_KEYBOARD_LL, KeyboardHookProcedure, GetModuleHandle(curModule.ModuleName), 0);
- if (hKeyboardHook == IntPtr.Zero)
- {
- HookStop();
- throw new Exception("SetWindowsHookEx failed.");
- }
- }
- }
- }
- }
- /// <summary>
- /// Stop Keyboard Hook Process
- /// </summary>
- public void HookStop()
- {
- bool retKeyboard = true;
- if (hKeyboardHook != IntPtr.Zero)
- {
- retKeyboard = UnhookWindowsHookEx(hKeyboardHook);
- hKeyboardHook = IntPtr.Zero;
- }
- if (!(retKeyboard)) throw new Exception("UnhookWindowsHookEx failed.");
- }
- /// <summary>
- /// Keyboard Hook Process
- /// </summary>
- /// <param name="nCode"></param>
- /// <param name="wParam"></param>
- /// <param name="lParam"></param>
- /// <returns></returns>
- private IntPtr KeyboardHookProc(int nCode, IntPtr wParam, IntPtr lParam)
- {
- if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN)
- {
- int vkCode = Marshal.ReadInt32(lParam);
- Console.WriteLine((System.Windows.Forms.Keys)vkCode);
- return new IntPtr(1);
- }
- return CallNextHookEx(hKeyboardHook, nCode, wParam, lParam);
- }
- }
- }
[C#] TripleDES 密鑰及向量產生器
Posted by essoduke - 2010 年 05 月 14 日 21:02:18 - 125 User Views因為我把 TripleDES Class 簡化,所以 key 和 iv 都直接寫入 Class 內,有了這個程式就可以很方便替換掉。
反正就是產生密鑰和向量值的產生器而已 XD

Powered by WordPress with GimpStyle Theme design by Horacio Bella.
Entries and comments feeds.
Valid XHTML and CSS.





