發表文章

目前顯示的是 5月, 2016的文章

OJ的建置(1)--建立資料庫

圖片
想把online judge弄得專業一點,所以資料庫的管理是必要的,我選擇了mysql,因為想要用linux當主機。 先上 codecademy ,學習學習。有三章左右,我學完第一章基本語法後就開始配環境了,先在cygwin上練習!! 由於學校主機的mysql好像要帳號,沒門道,所以我便想辦法配個環境,沒想到cygwin上就可以啦!! 首先,我得到stack overflow的大神 幫助 ,找到了cygwin安裝的 方法 。以下是我操作的截圖。 (我的 setup-x86_64.exe在downloads中) 連上後,跟一般鏡像站的介面一樣,然後搜尋處鍵入mysql(還是sql我忘了),把選項改成install。接著下一步就可以下載下來囉! 其實我發現從GUI直接開setup,然後選原本列表內的鏡像站,就有sql可以下載了,還是不太清楚上面在幹嘛XP (好像是port下載,不一樣,說到port,我就想到我悲慘的freeBSD QQ , 還是Mint(Ubuntu)的apt-get好用 ... ) mysql載下後,要進行一些 設定 ,把server架起來。 就三行 ( 直接在cygwin的TCL下指令 ): # To begin MySQL setup run the following: mysql_install_db # Run mysql - you'll get a firewall alert from windows if you have it active. mysqld_safe & # Immediately following that, it would be wise to run the following: mysql_secure_installation ( 一些密碼設定之類的 ) 這樣就算設定完成了。 因為一開始只有root帳號(要其他的帳號要再加,我也還沒 研究 ) 所以下   mysql -u root -p   以  root  身分先登入  server 。 一登入,可以先下 show databases ; 看看有那些databases。 然後用 create database 名稱 ; 指令創造資料庫。 用system 後可接bash shell 指令,我直接cat 寫好的 mysql , 然後貼上

[MySQL] 建立資料庫 on Cygwin

圖片
想把online judge弄得專業一點,所以資料庫的管理是必要的,我選擇了mysql,因為想要用linux當主機。 先上 codecademy ,學習學習。有三章左右,我學完第一章基本語法後就開始配環境了,先在cygwin上練習!! 由於學校主機的mysql好像要帳號,沒門道,所以我便想辦法配個環境,沒想到cygwin上就可以啦!! 首先,我得到stack overflow的大神 幫助 ,找到了cygwin安裝的 方法 。以下是我操作的截圖。 (我的 setup-x86_64.exe在downloads中) cygstart -- /path/to/setup-x86.exe -K http://cygwinports.org/ports.gpg (/path/to/setup-x86.exe 看你的安裝檔位置) 增加 User URL :   ftp://ftp.cygwinports.org/pub/cygwinports 連上後,跟一般鏡像站的介面一樣,然後搜尋處鍵入mysql(還是sql我忘了),把選項點一下改成install(10.1.18-1)。 (2017/2/9 update: 兩個條目都下,否則  mysql_install_db 會出現 "FATAL ERROR: Could not find ./bin/my_print_defaults" 而可能更新緣故,原本 mysql  變成了 mariaDB) 接著下一步就可以下載下來囉! 其實我發現從GUI直接開setup,然後選原本列表內的鏡像站,就有sql可以下載了,還是不太清楚上面在幹嘛XP (好像是port新增,鏡像內容不一樣,可能其他的只有提供 library 吧, 說到port,我就想到我悲慘的freeBSD QQ , 還是Mint(Ubuntu)的apt-get好用 ... ) mysql載下後,要進行一些 設定 ,把server架起來。 就三行 ( 直接在cygwin的TCL下指令 ): # To begin MySQL setup run the following: mysql_install_db # Run mysql -

踩地雷機器人-MineSweeper Solver

圖片
這個是高中地科老師提過的課題,耳聞同學中有人做出來了,當然,讀這科的要不落人後,開始實做吧。 對於這個目標,首要就是對項目的留意,除了自己上網查資料,生活中接觸到相關內容也要留心,像幾個月前同學介紹看sitcon的直播,就有查一些幾年前的影片,當中剛好就看到 從技術面簡介線上遊戲外掛 介紹 一些API的調用,就直接去google這些名詞了。 由於升級到win10,原本的M$game都進去xbox裡了,踩地雷也進去了,我覺得用舊版的應該比較好做,新版的花花綠綠的,根本就變成花園了,地雷變瓢蟲...受不了 > < 而且對於畫面的規劃感覺不是很好,還要滾輪滑動螢幕?! 怒載 舊版 首先比較麻煩的就是畫面像素分析,但剛好踩地雷數字的顏色都有分開所以只要抓那格的顏色就好了。( 3 7 8的顏色都一樣,所以我是看周圍狀態去變動3 , 7和8) 先把matrix做出來吧!! 我參考了一下這篇 自動化連連看 ,差不多了解流程。 像素怎抓??首先要抓到form的headler(名稱),我是用spy++(VS2010自帶的...剛好有裝 : ) 首先要注意的是headler,因為minesweeper程式開下去玩的時侯會生成一個child form,那個headler是抓不到的(因為根本沒有),所以要再借助API抓child form's headler 整句下來會變這樣: wndPaneParent = FindWindow(NULL , "Minesweeper"); // wndPaneParent 是一種windows API 的資料型態 , 名為 HWND , 宣告方式 : HWND 變數 ; if(!wndPaneParent) puts("no such wnd !!") , exit(1); // 除錯 wndPane = GetWindow( wndPaneParent , 5); // wndPane亦同 if(!wndPane) puts("no child wnd") , exit(1); //除錯 再配合一下標尺工具 FSCapture (真的不錯用 螢幕截圖都靠它了,還可以錄影 >///< 其中與其用標