2015年6月10日 星期三

脫離公司網域,但繼續使用公司資源

先敘述一下事情,

最近剛到公司上班,但用公司的網域電腦很不習慣

綁手綁腳的,決定來脫離!

2015年4月6日 星期一

2015年3月26日 星期四

Linux/C/line counter / 最簡單的方式取得 行數

這邊直接來介紹如果檔案中美行資料一樣長

如何取得一個檔案有幾行的最快方式。



    file=fopen(/tmp/123,"rb");
    uint64 len=0;
    fseek(file,0L,SEEK_END);
    len= ftell( file);
    fseek(file,0, SEEK_SET);

原理就是先把檔案移動到檔案尾巴,就可以知道整個檔案的長度了,

之後再把總長除以每行長就好囉。

2015年3月25日 星期三

Linux / Ubunut Shell 分割字串 / Separete String by space or delimiter.


如何在Linux Shell中分割字串呢?

直接來看個範例吧!

#!/bin/sh

String1 = "AA BB CC"
String2 = "DD;EE;FF"

arr1=$(echo $String1 | tr " " "\n")
arr2=$(echo $String2 | tr ";" "\n")

for x1 in $arr1
do
    echo "[$x1]
done


echo ""
echo ""



for x2 in $arr2
do
    echo "[$x2]
done


最後的結果為

AA
BB
CC

DD
EE
FF


是不是很簡單呢?

原理就是運用tr這個指令把你想要切割的字元(例如空白或者 ';') 替換成換行符號,
之後就可以用for 迴圈來做分割了!

2015年2月2日 星期一

2015/02/02 AllSeen /AllJoyn in openwrt 12.09 with TP-Link 1043nd V1

最近開始研究 AllSeen 也就是Alljoyn.

我的測試機器為TP-Link1043nd V1 ,上面跑的OS為 openwrt 12.09的版本,
並不是原生TPLink的 OS哦!


2014年12月23日 星期二

ld: warning: cannot find entry symbol _start;

如題,今天compile一個東西,只想compile他的lib而不是整個daemon,

所以就下了 make XXXlib 這樣的指令,

實際執行起來大概像是  /usr/bin/ld hello.c -o hello.o 這樣的東西

就跑出了如標題這樣的錯誤,雖然只是一個warning 但是根本可以看做一個error,因為位置

根本全部都錯亂,所以下面一定跑出一堆undefined reference,

研究了許久

終於發現要在後面加上 -lc



/usr/bin/ld hello.c -o hello.o -lc

-lc 代表要跟compiler 說使用標準的C 函式庫

這樣終於可以過了 -.-


2014年12月15日 星期一

C++中函式輸入泛型並型態轉換為enum / In C++ function generic parameter casting to enum / casting void* to enum


在C++中不能直接cast成 enum 但在C 中可以
如以下source code 在C中可以COMPILE過 
情況類似此篇文章 typdef enum void* 的用法請益

typedef enum {
     enum1
     enum2,
     enum3}
myenum;
void myfunc(void *data)
{
    if((myenum)data==enum1)
      ...
    else if ((myenum)data==enum2)
     ...
    else
     ...
}

2014年10月28日 星期二

[LuaDec51] Compile for Ubuntu

首先先到  luadec的網站下載Luadec51的source code : http://files.luaforge.net/releases/
之後再把lua5.1版本的source code下載下來 :  http://www.lua.org/versions.html



由於luadec51會用到Lua51的LIB   (liblua.a    and  liblualib.a)
所以先進到lua5.1的資料夾中去把 Lua compile起來,
$> cd lua5.1...
$> make all

則 liblua.a   and liblualib.a 在  luadec51/src  中可以找到

之後只要自己寫個Makefile指向這兩個lib就可以compile成功並執行囉

如果對於如何寫一個Makefile有問題可以留言在底下。



2013年11月5日 星期二

[Python][suds][errno 111] 如果你用Python suds library 遇見了 errno111 的問題請進/If you using python suds library and error happen which errno is 111 , please come in

作業系統 /operating system: Fedora 17
Python :2.6

直接看code 這個問題困擾我很久,今天終於解決了!


PROBLEM CODE: 

#python code start #
from suds.client import Client

url = 'someurl?wsdl'
client = Client(url,cache=None)
print  client.service.yourfunction();


然後就會發生下面這個錯誤/ And some error cause



  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/client.py", line 542, in __call__
  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/client.py", line 602, in invoke
  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/client.py", line 637, in send
  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/transport/https.py", line 64, in send
  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/transport/http.py", line 77, in send
  File "/usr/lib/python2.6/site-packages/suds-0.4-py2.6.egg/suds/transport/http.py", line 118, in u2open
  File "/usr/lib64/python2.6/urllib2.py", line 383, in open
    response = self._open(req, data)
  File "/usr/lib64/python2.6/urllib2.py", line 401, in _open
    '_open', req)
  File "/usr/lib64/python2.6/urllib2.py", line 361, in _call_chain
    result = func(*args)
  File "/usr/lib64/python2.6/urllib2.py", line 1130, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib64/python2.6/urllib2.py", line 1105, in do_open
    raise URLError(err)
urllib2.URLError: <urlopen error [Errno 111] Connection refused>


2013年11月1日 星期五

[OllyDBG][反組譯/deassembly][mirc_6.0][keygen]如何使用OllyDBG寫一個序號產生器,Writing a keygen by OllyDBG Tutorial

原文網址在此 http://www.securitytube.net/video/1078

如果網頁連結/影片失效請聯絡我。

閱讀本文請搭配上方網址的影片。
-------------------------------------------------------------------------------------------------------
最近對於反組譯 與 組合語言有點興趣,所以找了網路上的教學來看,由於是英文的所以讀者可能需要多聽幾次。

此教學為"教學 與 學習" 用,請不要拿去做商業行為。

作業系統: Windows 8 64bit
反組譯工具: OllyDBG 2.0 官方版本 no plugin
程式撰寫工具: SlickEdit 官方試用版本
GCC編譯環境: Cygwin 64bit-安裝gcc

以上大家都可以在google輕易找到

至於學習對象為mirc 版本為6.0.1,官方不提供舊版,請讀者們自己尋找。


2013年9月6日 星期五

[Java] JComboBox/ComboBox 字體顯示置中 display in the center / 在下拉式選單中顯示置中 center align the text in the comboBox

最近遇到 java combox 需要在下拉式選單中把選項的字  置中 與 顯示出來也置中  如圖












如何達成圖上這個效果

直接來看一下片段代碼


2013年9月4日 星期三

[Java] JDialog 與 JFrame 傳值 / 子母視窗 /JDialog 輸入值給JFrame

由於最近在網路上找了許多的資料 每個資料都說得不清不楚不然就是很長一大串

下面給一個絕對能跑的範例 .java 檔   有問題可以提出來   並且關鍵點會用紅色標示

IDE: Eclispse

使用方法:  開啟你的IDE(這邊使用Eclipse) , 新增一個project> 在src 新增一個class > 把文章底下

////代碼開始////  到 ////代碼結束//// 中間的code 全部 "複製貼上"! 就可以執行了  然後再慢慢trace 各代碼的意義   寫得滿簡陋的了  有問題可以留言唷

簡介: 代碼分為三個部分    主要的Main 框架  還有自訂義的Dialog 最後是 自訂義Class

2013年9月3日 星期二

UVA Q100 解題

最近想練習C++  所以找了 http://luckycat.kshs.kh.edu.tw/ 此網站的題目來練習



寫出來的解法應該不完美 僅供參考


2013年1月28日 星期一

在python 中 使用mongoDB 像mysql 一樣取出陣列資料

最近遇到的問題, python 中直接直接使用mysql querry 出來的資料可以用陣列的方式取得, 那 mongo呢?
直接來看代碼
...
...
...

accounts = accounts.find_one({'username':'axdc11239@yahoo.com.hk'})
print accounts
print list(accounts)
print list(accounts)[0]


2013年1月27日 星期日

在python中把string當成object.name

因為最近有需要用到,碰巧看到人家python有出現這樣的代碼 getattr(... , ...)
http://blog.csdn.net/wzm112/article/details/6444668


  1. def query():  
  2.     conn = Connection('127.0.0.1',27017)  
  3.     db    = getattr(conn,'dbname')  
  4.     coll   = getattr(db,'collname')  
  5.      
  6.     #使用正则查询  
  7.     import re  
  8.     q      = rs.compile(r'add'#完成正则 r'.*'  ,r'[a-z]+'  
  9.     rst    = coll.find({'field' : { '$regex' : q } })  
  10.     print rst.count()  #打印查询结果  
  11.     #查询方式2  
  12.     rst    = coll.find({'field' : { '$regex' : r '[a-z]+'} })  
  13.     print rst.count()  


2012年7月14日 星期六

[Asterisk] AMI ,Asterisk manager Interface ,如何從外網,內網連接AMI的端口呢?

Server環境:     Asterisk 1.8   架設在一個 中華電信租來的小server上 


測試電腦環境: Win 7 64bit ,浮動IP
使用軟體:Putty
SoftPhone: LinPhone 3.5.2  此為安裝在電腦上的
另外一個測試機台為手機: HTC ONE X 安裝軟體一樣為 Playstore 提供之 Linphone Android

以下為,設置AMI 與 使用"遠端"電腦console連上server之AMI並對asterisk下command使得電腦端的linphone與手機端的linphone可以互通之文章
          





2012年4月6日 星期五