轉載
Thrift and protobuf
摘要:
最近工作需要保存一些結構化的數據。常規的思路,自然是選擇xml。定義一個schema,然后再找個利落點的XML庫(覺得tinyxml/tinyxml++ 就挺不錯的)就算問題解決。這兩天blog上比較熱鬧的話題,是從Google放出來的Protocol buffers ,一種用來部分替代xml的數據描述語言。Google就是Google,就算是推白菜出來,也一樣能讓人側目。其實protocol buffers也不是什么新鮮的概念,且不說傳統的ASN.1, ICE這些有點類似的東西,facebook一年前就推出了thrift ,應該說定位是非常的接近的。也有謠傳說是先有了protocol buffers在google內部流行,然后google的人跳槽到facebook,就出了thrift這個東西
閱讀全文
小創意
摘要: Milk 設計公司提供了一個超級簡單的方法,將不用的塑料瓶、玻璃瓶變成一個優雅的花瓶,或者是任何容器。這個套筒由硅膠制作,可以容納不同大小的容器。
閱讀全文
posted @
2011-11-01 10:18 日需博客 閱讀(2092) |
評論 (0) 編輯
(Chrome擴展)Google發布遠程桌面控制擴展Chrome Remote Desktop BETA
摘要: 如果你迫不及待地想幫女同學修電腦,但又極不情愿到對方家里提供上門服務,你不用糾結了。Google給你提供了一個遠程控制工具。
Chrome Remote Desktop BETA是Google剛剛發布的一個遠程桌面控制工具,可以讓你通過Chrome瀏覽器或者Chromebook上網本遠程訪問另一臺電腦。
該測試版產品采用了“Chrome遠程”技術,有了它,你可以訪問另一臺電腦,并與之分享內容,你所要做的就是輸入一個一次性的授權碼。
閱讀全文
posted @
2011-10-10 09:17 日需博客 閱讀(2623) |
評論 (0) 編輯
花78美元,人人都可以擁有一臺智能手機驅動的機器人Romo
摘要: Romo將由硬件和軟件組成。硬件包括上面圖片中你可以看到輪子,電板,智能手機接口,鋰電池等。軟件將由一系列手機應用構成,也就是說開發者可以為智能手機開發相關的應用來延伸該機器人的功能。
目前初期Romo正在開發的應用包括3款:一款是RomoRemote——遙控該機器人,你可以通過手機上的攝像頭查看機器人周圍的情況,也就是具有了間諜功能。Romo Kart:攻擊應用,通過該應用你可以向機器人發出攻擊命令,主要可以用于和同伴比賽玩耍。Drag and Drop Programming Module:你可以直接在你的智能手機上編程,并看著該機器人執行你的命令。
閱讀全文
posted @
2011-10-09 13:28 日需博客 閱讀(2810) |
評論 (2) 編輯
使用memc-nginx和srcache-nginx模塊構建高效透明的緩存機制
摘要: 為了提高性能,幾乎所有互聯網應用都有緩存機制,其中Memcache是使用非常廣泛的一個分布式緩存系統。眾所周知,LAMP是非常經典的Web架構方式,但是隨著Nginx的成熟,越來越多的系統開始轉型為LNMP(Linux+Nginx+MySQL+PHP with fpm),這是因為Nginx采用基于事件機制的I/O多路復用思想設計,在高并發情況下其性能遠遠優于默認采用prefork模式的Apache,另外,相對于Apache,Nginx更輕量,同時擁有大量優秀的擴展模塊,使得在Nginx上可以實現一些美妙的功能。
閱讀全文
posted @
2011-10-09 09:42 日需博客 閱讀(1546) |
評論 (1) 編輯
加州大學:50美元+iPhone=350倍醫學顯微鏡
摘要: 加州大學的一個研究小組進行的一項試驗發現花不到50美元就可以將iPhone變成一個能放大350倍的醫學顯微鏡。
他們是這樣做的:將一個1毫米球透鏡用膠帶和橡皮筋附著到iPhone的透鏡組外。雖然這個小小的球透鏡只能產生5倍放大的效果,但是其卻能創建一個很小的焦點使得我們能看清大約1.5微米的細節。然后經過失真處理并且結合多張圖片的聚焦區域,你就可以得到比較清晰的放大到350倍的圖像了。通過該圖像你甚至可以鑒定細胞的類型,數量以及光譜讀數。
閱讀全文
posted @
2011-10-08 16:50 日需博客 閱讀(2179) |
評論 (1) 編輯
VNC遠程管理Linux服務器安全指導
摘要: 在開源領域,遠程遙控技術的代表就是VNC了。VNC(Virtual Network Computer,虛擬網絡計算機)是一套由AT&T實驗室開發的可操控遠程計算機的軟件。根據主控端與被控端的不同,VNC軟件可以分為兩個部分,分別為VNC Server與VNC viewer。前者是安裝在被控制端上,而后者被安裝在主控端上。VNC軟件不僅是開源的,而且是跨平臺的。有不少系統管理員喜歡在Windows平臺上使用這個VNC來作為遠程管理Linux服務器或者客戶端的工具。
閱讀全文
posted @
2011-10-08 09:11 日需博客 閱讀(1932) |
評論 (1) 編輯
我們的網站壓力究竟在哪里
摘要: 目前網站架構一般分成負載均衡層、WEB層和數據庫層,我其實一般還會多加一層,即文件服務器層,這樣我們在后面的討論過程中,我們可以依次對這四層進行討論;這里為了更具有說服力,我將用三個并發較大的生產環境來說明下,一個是我現在維護的電子商務網站(并發最大值2000,日PV500萬左右,此并發并不是總這么高的,只是最高峰是有2900,下面的網站類似)、我的一拍網網站(并發最大值500,日PV50萬左右)、以前維護的大型CDN廣告網站(并發最大值5000,日PV5000萬左右)。
閱讀全文
posted @
2011-10-08 09:08 日需博客 閱讀(404) |
評論 (0) 編輯
使用iptables實現NAT轉發功能
摘要: 本文案例中,我們假設有一家ISP提供園區Internet接入服務,為了方便管理,該ISP分配給園區用戶的IP地址都是私網IP,通過該私網IP用戶無法向外發布信息。但是,部分用戶要求建立自己的WWW服務器對外發布信息。
我們可以在防火墻的外部網卡上綁定多個合法IP地址,然后通過ip映射使發給其中某一個IP地址的包轉發至內部某一用戶的WWW服務器上,然后再將該內部WWW服務器響應包偽裝成該合法IP發出的包。
閱讀全文
posted @
2011-10-08 09:02 日需博客 閱讀(784) |
評論 (0) 編輯
細數那些運行在微軟平臺上的NoSQL數據庫
摘要: 從可查詢的分布式解決方案,如MongoDB,到簡單的分布式Key/Value存儲解決方案,如Cassandra。此外,還有Riak,Tokyo Cabinet,Voldemort,CouchDB和Redis。但目前僅有少量的NoSQL項目支持在Windows平臺上運行,如果要說到生產應用那就更少了。
閱讀全文
posted @
2011-09-30 09:42 日需博客 閱讀(1865) |
評論 (0) 編輯
談談對于企業級系統架構的理解
摘要: 在我們剛開始學習架構的時候,首先會想到分層的概念,分層架構比較經典的是三層架構,那么,什么是三層架構呢?它包括表現層,業務層,數據訪問層;而對于一個新手來說,從抽象意義上的三層架構,邏輯上就劃分為三個層。
閱讀全文
posted @
2011-09-30 09:26 日需博客 閱讀(271) |
評論 (0) 編輯
C# HttpWebRequest 通用類(二)
摘要: using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Text;
namespace HttpWeb
{
///
/// Http操作類
/// 閱讀全文
posted @
2011-09-28 13:52 日需博客 閱讀(4403) |
評論 (0) 編輯
C# HttpWebRequest 通用類(一)
摘要: /*
使用方法:
MyHttp loHttp = new MyHttp();
string lcHtml = "";
loHttp.HandleCookies = true;//操作Cookies
loHttp.Method = "GET";
lcHtml = loHttp.GetUrl("http://signin.ebay.com.cn/ws2/eBayISAPI.dll?SignIn&ssPageName=h:h:sout:CN");
loHttp.AddPostKey("Key", "Value");
loHttp.Referer = "http://signin.ebay.com.cn/ws2/eBayISAPI.dll?SignIn&ssPageName=h:h:sout:CN";
loHttp.Method = "POST";
lcHtml = loHttp.GetUrl("http://signin.ebay.com.cn/ws2/eBayISAPI.
閱讀全文
posted @
2011-09-28 13:51 日需博客 閱讀(2692) |
評論 (1) 編輯
C#三種模擬自動登錄和提交POST信息的實現方法
摘要: 網頁自動登錄(提交Post內容)的用途很多,如驗證身份、程序升級、網絡投票等,以下是用C#實現的方法。
網頁自動登錄和提交POST信息的核心就是分析網頁的源代碼(HTML),在C#中,可以用來提取網頁HTML的組件比較多,常用的用WebBrowser、WebClient、HttpWebRequest這三個。以下就分別用這三種方法來實現:
閱讀全文
posted @
2011-09-28 13:40 日需博客 閱讀(954) |
評論 (0) 編輯
ASP.NET 也可以做得很好 2.XSLT初識 在ASP.NET中使用XSLT
摘要: 大家說我說的跟.net一點關系都沒有,可是第一篇我也說了啊,僅僅是一個HELLO的例子啊。現在哪個人不忙啊。只能一點一點的寫了。。
好了,廢話少說,我們先看看實際的情況,然后根據情況來寫一個小小的例子吧,這次有Demo下載嘍。。。
現實項目中的情況:
閱讀全文
posted @
2011-09-28 10:33 日需博客 閱讀(450) |
評論 (0) 編輯
SLT 入門--實際應用
摘要:
把上面的代碼加入web.config文件的appSettings節點中,別問為什么...
為Request寫個擴展:
閱讀全文
posted @
2011-09-28 10:27 日需博客 閱讀(424) |
評論 (0) 編輯
ASP.NET 也可以做得很好 1.XSLT初識 一個HELLO例子
摘要: XSL 指擴展樣式表語言(EXtensible Stylesheet Language)
萬維網聯盟開始發展 XSL 的起因是由于對基于 XML 的樣式表語言的需求。
XSLT 指 XSL 轉換。XSLT 將 XML 文檔轉換為其他文檔,比如 XHTML
概念不多講,這里附上W3C的網址 ,希望您一定要去看看!
老規矩,先寫出個能運行的程序再說。
既然XSLT是將XML文檔轉換為其它文檔,那么我們就先建立一個XML文檔吧。(名為:HelloHtml.xml)
閱讀全文
posted @
2011-09-28 10:24 日需博客 閱讀(297) |
評論 (0) 編輯
ASP.NET性能優化之構建自定義文件緩存
摘要: ASP.NET的輸出緩存(即靜態HTML)在.NET4.0前一直是基于內存的。這意味著如果我們的站點含有大量的緩存,則很容易消耗掉本機內存。現在,借助于.NET4.0中的OutputCacheProvider,我們可以有多種選擇創建自己的緩存。如,我們可以把HTML輸出緩存存儲到memcached分布式集群服務器,或者MongoDB中(一種常用的面向文檔數據庫,不妨閱讀本篇http://msdn.microsoft.com/zh-cn/magazine/gg650661.aspx)。當然,我們也可以把緩存作為文件存儲到硬盤上,考慮到可擴展性,這是一種最廉價的做法,本文就是介紹如果構建自定義文件緩存。
閱讀全文
posted @
2011-09-28 09:43 日需博客 閱讀(342) |
評論 (0) 編輯
WEB快速開發工具WebMatrix 2
摘要: WebMatrix是由微軟的Web快速開發工具,它包含了構建網站所需要的一切元素。用上5分鐘你的代碼就能從無到有。
閱讀全文
posted @
2011-09-28 09:35 日需博客 閱讀(591) |
評論 (0) 編輯
裸眼3D搭配1.2GHz雙核 HTC EVO 3D
摘要: HTC作為谷歌Android系統最忠實的支持者之一,為我們帶來了包括G1、Desire、Desire HD等非常好用的GPhone,成功的將Windows Mobile打入冷宮,HTC也憑借Android,成為了全球最出色的手機制造商之一。
閱讀全文
posted @
2011-09-28 09:26 日需博客 閱讀(298) |
評論 (0) 編輯
單點登錄在項目中的實現
摘要: 最近在做一個登錄功能,糾結了好幾天,一直在找一個能優雅的實現單點登錄的功能。博客園有看到某人寫了又臭又長的八股文式的文章,沒看到有價值的東西。
其實單點登錄最終要解決的是多個不同域名間共享cookie的問題。但是要在不同域名間共享cookie是一件很困難的事情,要在某個域名下面種cookie就必須訪問該
域名。網上有很多方法,看到的有動態創建iframe實現,在iframe里面訪問某個域名的頁面種下cookie,該方法需要寫一些js代碼,寫起來有點累,所以我最終
選擇了用頁面跳轉來實現,想不到效果比我預期的好很多,瀏覽器幾乎看不出來有跳轉的痕跡。
閱讀全文
posted @
2011-09-27 10:54 日需博客 閱讀(831) |
評論 (0) 編輯
免費商業模式完全指南
摘要: 編者按:Future Simple是一家為小商戶開發在線軟件的公司,其創始人兼CEO Uzi Shmilovici撰寫了這篇文章。這篇文章是基于芝加哥大學布斯商學院(University of Chicago Booth School of Business)經濟學教授Eric Budish的一項研究,并結合了Andreessen-Horowitz的風險合伙人和斯坦福商學院教授Peter Levine的觀點和意見所作。
閱讀全文
posted @
2011-09-27 09:18 日需博客 閱讀(266) |
評論 (0) 編輯
史上最佳十大游戲排名
摘要: 據國外媒體報道,隨著游戲行業的不斷擴大,每位玩家都能獲取自己希望購買的心儀游戲。棒透了的獨立游戲也總是不斷出現。然而,那些系列性的游戲卻能使我們成為永久的“回頭客”。它們用一個接一個的好游戲不斷轟擊我們,在世界范圍內贏得了無數玩家。
閱讀全文
posted @
2011-09-27 09:15 日需博客 閱讀(319) |
評論 (0) 編輯
教你如何在博客里加入分享功能——分享插件(HRshare)
摘要: 下面我要用到的插件是我自己寫的,關于插件地址是:jquery.HooRay——自己做的一個jquery常用工具插件。關于分享插件的制作流程我也寫了篇文章,有興趣的可以看下:自己寫的一個分享按鈕的插件(可擴展,內附開發制作流程)
閑話不多說,進入正題吧,大家可以看下文章最后是不是有一排分享的按鈕,那個就是最終的效果了,當然不止那一種效果,一共有以下幾種效果,分別是:
閱讀全文
posted @
2011-09-26 10:14 日需博客 閱讀(1647) |
評論 (2) 編輯
.NET中的加密算法總結(自定義加密Helper類)
摘要: 相信許多人都使用過.NET提供的加密算法,而且在使用的過程我們必須了解每種加密算法的特點(對稱或非對稱,密鑰長度和初始化向量等等)。我也看到過很多人寫過.NET中加密算法總結,但我發現個別存在一些問題,很多人喜歡羅列每種加密算法的具體實現,假設我們要求實現AES和Triple DES加密算法,的確可以很多地分別給出它們的具體實現。
那我們真的有必要給出每個加密算法的具體實現嗎?而且這樣的設計不符合OOP設計思想,最重要的是我們要維護多個加密算法啊!OK接下來讓我們實行一個可擴展和好維護的加密算法Helper。
閱讀全文
posted @
2011-09-26 09:48 日需博客 閱讀(1089) |
評論 (0) 編輯
CentOS 6下搭建Apache+MySQL+PHP+SSL
摘要: 網上的一些文章都已經比較老了,現在版本高了之后,其實配置是很省力的(不考慮什么負載的話)
分享全過程,出了文中提到的安裝epel rpmfushion 源指令不同外,其他的過程也適用與Centos 5
1.安裝CentOS 6 ,可以選擇最小安裝,也可以安裝桌面
2.升級系統
yum update
閱讀全文
posted @
2011-09-26 09:39 日需博客 閱讀(359) |
評論 (0) 編輯
破解郵箱密碼實例
摘要: 本文介紹了如何破解E-mail郵箱以及利用獲取的一個配置文件來實施滲透。在無法直接進行攻擊時,郵件木馬攻擊以及郵箱賬號破解攻擊無疑是一種最佳選擇。郵件木馬攻擊成功有兩個必要條件:一是木馬不被查殺,二是用戶打開郵件并執行了隱藏在郵件中的木馬程序。郵件木馬攻擊隨著網民對網絡安全意識的提高,其攻擊成功率將會大大降低,而郵箱賬號破解在破解成功后,可以很方便地了解用戶的行為、獲取郵件中的資料以及獲取郵箱主人的個人信息等。郵箱賬號破解一般有三種情況:一是用戶自己忘記了郵箱密碼,通過郵件服務器的“忘記密碼”模塊無法重新設置或者獲取原密碼;二是出于商業競爭或者好奇,想知道對方郵件中內容,因此對郵箱賬號進行破解;三是專業性攻擊,攻擊郵箱獲取資料、掌握個人動態以及獲取個人信息等。
閱讀全文
posted @
2011-09-26 09:20 日需博客 閱讀(882) |
評論 (0) 編輯
十五款免費的Windows管理工具推薦(附下載)
摘要: 毫無疑問,每當提起微軟服務器端使用體驗的優化,大家都會不禁將目光投向微軟自己的產品貨架。沒錯,這種思路在大多數情況下都是可取的。但事實上,開源工具隊伍中同樣存在著大量能夠為Windows Server、Exchange、SQL以及SharePoint提供支持的軟件。此類替代方案往往提供——而且是免費的——了優于任何其它第三方零售產品的強大輔助功能。
微軟公司自己也承認上述事實,并通過其CodePlex網站幫助此類開源工具進一步推廣。而當談起免費工具時,微軟總能在這撥隊伍中找出幾位令人肅然起敬的精兵悍將。
總而言之,目前微軟環境下的開源工具陣容是史無前例的龐大。從網絡故障排查到安全保障再到性能分析,我們將開源工具隊伍中基于Windows系統的十大實用產品匯總成一份名單。如果大家沒有在其中看到自己所喜愛的選項,不妨在評論欄中與我們分享您的經驗。
閱讀全文
posted @
2011-09-26 09:13 日需博客 閱讀(1304) |
評論 (0) 編輯
中國黑客產業解密:一夜賺600萬
摘要: “我那朋友一夜刷庫曾獲利600萬,第二天就買了一輛跑車過來顯擺。”Chown Group(COG)倡導者李麒向記者介紹了黑客暴富的經歷,李麒網名Liwrml,是中國最早的黑客組織“綠色兵團”創始人之一。昨日,由以網絡信息安全領域為焦點的非營利性研究機構Chown Group主辦的COG-2011信息安全論壇在上海召開,近400名“黑客和信息安全從業人員”參與,包括中國最頂級的黑客組織領袖:綠色兵團創始人 Goodwell、鷹派代表萬濤、紅盟代表Lion和Knownsec代表李麒等人。
閱讀全文
posted @
2011-09-23 10:24 日需博客 閱讀(244) |
評論 (0) 編輯
Ubuntu 11.10 Beta 2 發布
摘要: Ubuntu 11.10 的第二個測試版本已經提供下載,是不是躍躍欲試其新功能了,這只是一個測試版本,所以不推薦作為正式版本使用。你可以制作一張Live CD 或者 usb 啟動盤進行測試。
這是測試版本的主要改變有:
全新的Dash;
Lenses成為Dash的一部分;
Lense細化工具
camouflage 被建立在桌面壁紙基礎上的Dash, launcher 與 Panel;
Unity 桌面以最新發布的 GNOME 3 不穩定版本為基礎;
還有一些新的應用,如:郵件客戶端Thunderbird、備份工具DeJa Dup;
全新的登錄界面LightDM,默認安裝的社交客戶端Gwibber;
閱讀全文
posted @
2011-09-23 10:11 日需博客 閱讀(278) |
評論 (0) 編輯
Fedora 15上做主從、雙主模型的集群
摘要: Fedora 15上做雙主模型的集群
拓撲如下所示:
----------- ----------
| HA1 |____| HA2 |
|__________| |________|
HA1:
IP:192.168.1.78/24
HA2:
IP:192.168.1.151/24
VIP:192.168.1.110
閱讀全文
posted @
2011-09-23 09:59 日需博客 閱讀(2345) |
評論 (1) 編輯
八種主流NoSQL數據庫系統對比
摘要: 雖然SQL數據庫是非常有用的工具,但經歷了15年的一支獨秀之后壟斷即將被打破。這只是時間問題:被迫使用關系數據庫,但最終發現不能適應需求的情況不勝枚舉。
但是NoSQL數據庫之間的不同,遠超過兩 SQL數據庫之間的差別。這意味著軟件架構師更應該在項目開始時就選擇好一個適合的 NoSQL數據庫。針對這種情況,這里對 Cassandra、 Mongodb、CouchDB、Redis、 Riak、 Membase、Neo4j和HBase進行了比較:
(編注1:NoSQL:是一項全新的數據庫革命性運動,NoSQL的擁護者們提倡運用非關系型的數據存儲。現今的計算機體系結構在數據存儲方面要求具 備龐大的水平擴 展性,而NoSQL致力于改變這一現狀。目前Google的 BigTable 和Amazon 的Dynamo使用的就是NoSQL型數據庫。 參見NoSQL詞條。)
閱讀全文
posted @
2011-09-22 14:02 日需博客 閱讀(315) |
評論 (0) 編輯
最新基于HTML5的移動操作系統Carbyn
摘要: 基于HTML5的Carbyn最大的特點是無需安裝任何東西,你只需打開一個瀏覽器然后登錄到Carbyn,就可以開始使用了。Carbyn團隊向我在iPad上和在黑莓PlayBook上演示了該系統,而且據他們說,很快在智能手機上也能用Carbyn了。
閱讀全文
posted @
2011-09-22 13:37 日需博客 閱讀(1841) |
評論 (3) 編輯
移動互聯網的第二個蘋果:HTML 5
摘要: 喬布斯的蘋果重新定義了移動互聯網,HTML5有望成為第二個蘋果。它被公認為下一代的Web語言。它被喻為終將改變移動互聯網世界的幕后推手。
2010年2月,蘋果發布iPad時,就表示已支持HTML5。今年1月,其新官網上線,已完全使用HTML5。7月,蘋果更是收購了html5.com的域名。谷歌的Youtube已部分使用HTML5,Chrome瀏覽器率先宣布全面支持HTML5的瀏覽器之一。前不久,微軟也投入HTML5的懷抱,IE9開始對其支持。至此,世界三大移動互聯網巨頭都支持了HTML5。Facebook則在加緊移動Web應用商店的探索步伐。而UCweb的俞永福(微博)堅定地認為HTML5的到來將為手機瀏覽器帶來新生。
巨頭們都對HTML5頂禮膜拜,我們有何理由說不呢?
閱讀全文
posted @
2011-09-21 15:24 日需博客 閱讀(197) |
評論 (0) 編輯
SQLite3 C/C++ 開發接口簡介
摘要: 1.0 總覽
SQLite3是SQLite一個全新的版本,它雖然是在SQLite 2.8.13的代碼基礎之上開發的,但是使用了和之前的版本不兼容的數據庫格式和API. SQLite3是為了滿足以下的需求而開發的:
l 支持UTF-16編碼.
l 用戶自定義的文本排序方法.
l 可以對BLOBs字段建立索引.
因此為了支持這些特性我改變了數據庫的格式,建立了一個與之前版本不兼容的3.0版. 至于其他的兼容性的改變,例如全新的API等等,都將在理論介紹之后向你說明,這樣可以使你最快的一次性擺脫兼容性問題.
閱讀全文
posted @
2011-09-21 15:12 日需博客 閱讀(1097) |
評論 (0) 編輯
用SELinux保護你的Apache
摘要: 你的Web服務器確實有可能遭受攻擊,但是SELinux可以用來確保你的網站不用承受真正的傷害。
你可以運用SELinux類型來創建一個確切定義:一個服務可以做什么和它在哪里完成要做的事情。默認情況下,httpd_sys_content類型被設為/var/www,它規定httpd進程可以在該目錄中工作。如果攻擊者破壞了Apache Web服務器并嘗試在別處寫入,就像紅帽和Fedora以及CentOS等相似Linux版本的默認/tmp,你需要知道你正在處理什么。如果你配置Apache來為/data目錄中的內容服務,SELinux也會默認地防止這種情況。
由于這些默認設置可能造成復雜的情況,很多Linux管理員關閉SELinux。雖然關閉SELinux的確讓你的服務器提供服務時更容易,但是它還是增加了安全風險。
閱讀全文
posted @
2011-09-20 14:18 日需博客 閱讀(315) |
評論 (1) 編輯
如何用iptables實現Linux下強大的NAT功能
摘要: 本文主要介紹如何使用iptbales實現linux2.4下的強大的NAT功能。關于iptables的詳細語法請參考“用iptales實現包過慮型防火墻”一文。需要申明的是,本文絕對不是 NAT-HOWTO的簡單重復或是中文版,在整個的敘述過程中,作者都在試圖用自己的語言來表達自己的理解,自己的思想。
閱讀全文
posted @
2011-09-20 14:11 日需博客 閱讀(293) |
評論 (0) 編輯
輕量級Web服務器Nginx 1.1.2 發布
摘要: Nginx(發音同 engine x)是一款在BSD-like協議下發行的輕量級的Web服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器。由俄羅斯的程序設計師 Igor Sysoev所開發,最初供俄國大型的入口網站及搜尋引擎Rambler(俄文:Рамблер)使用。Nginx特點是占有內存少,并發能力強,事實上 Nginx的并發能力確實在同類型的網頁服務器中表現較好。
目前中國大陸使用Nginx網站用戶有:新浪、網易、騰訊,另外知名的微網志Plurk也使用Nginx。
閱讀全文
posted @
2011-09-20 14:01 日需博客 閱讀(330) |
評論 (0) 編輯
完美安裝CentOS + Nginx + PHP-FPM + MySQL
摘要: PHP 5.3.1
MySQL 5.0.89
Nginx 0.8.33 或 0.7.65 (可選)
現在,我們可以快速全自動搞定 CentOS + Nginx + PHP-FPM + MySQL 的安裝了
這個可比網上流傳的什么一鍵安裝包要好得多,強烈推薦此法安裝,適合所有菜鳥和高手
我服務器上全用的源代碼編譯安裝,也好不到哪去,還很費勁
閱讀全文
posted @
2011-09-20 13:49 日需博客 閱讀(411) |
評論 (0) 編輯
國外十大黑客去向大揭秘
摘要: 俗話說,“如果你不能打敗它,那就變成它。”對于很多管理人員來說,可以將這句話改為“如果你不能打敗它,那就利用它。 ”有很多黑客以善于發現并利用漏洞而著稱,他們被某些大型企業高薪聘請,幫助這些企業完善產品設計和發現問題。Facebook 擁有業界知名的“創意交流會”(hackathons)社區,人們夜以繼日地編寫代碼,并相互之間展開深入討論,Facebook也一度引 以為豪的成為黑客技術的交流平臺之一。盡管后來有很多黑客成立了自己的安全咨詢公司,但還是有不少黑客成為了政府、非營 利機構、私營企業的一分子。據估計,網絡上的黑客有四分之一已經被美國政府說收買。不過,有些管理者對聘請黑客持謹慎態度,他們不僅擔心會影響自身的聲譽,同時還擔心影響自身信息安全。有些人則認為,應該為這些才華橫溢的特殊雇員提供足夠 的挑戰,以長久保持他們的忠誠度。下面,我們從國外網站上摘錄匯總了一些為大名鼎鼎的企業機構賣命的黑客。
閱讀全文
posted @
2011-09-20 09:14 日需博客 閱讀(2686) |
評論 (1) 編輯
C#.net連接Mysql的類庫
摘要: 微軟的visual studio沒有自帶連接Mysql的驅動,要去網上下載一個mysql-connector-net-6.4.3驅動,然后安裝就可以使用。
下面是我封裝好的連接數據庫的類,直接調用即可。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using MySql.Data.MySqlClient;
閱讀全文
posted @
2011-08-24 00:09 日需博客 閱讀(3181) |
評論 (0) 編輯
GDI+ for VC6 MFC
摘要: 五年前,筆者曾在C#中使用GDI+開發程序,對其頗有好感。這一段時間,在使用VC6作圖時,深切感會到使用GDI的種種不便,不比GDI+好用。沉迷于VC6的高效與輕便,不想只為了一個GDI+而被迫安裝沉甸甸的.Net,便產生了一個疑問,難道GDI+只能用于.Net中嗎?
訪問微軟的MSDN網站后,隨即解開了此謎。于是便有了此文 – 如何在VC6 MFC中使用GDI+。
閱讀全文
posted @
2011-08-23 09:10 日需博客 閱讀(2891) |
評論 (6) 編輯
用C#制作印章
摘要: 制作印章來說,主要是如何讓字均勻的顯示在弧線段上,那么一般的印章要么以圓或者橢圓為底圖,不過這兩者的算法大致相同,為了方便說明,如下就用相對簡單的圓來舉例說明,如果需要做橢圓的話,可以在我的基礎上進行擴展,因為核心算法是一樣的,相對于圓來說,橢圓求弧長以及各個字符的位置,這兩點相對麻煩些,但是這兩者都可找到相應的數學公式。
閱讀全文
posted @
2011-08-19 17:45 日需博客 閱讀(1668) |
評論 (1) 編輯
ARP欺騙 C++實現
摘要: 前段時間我們學校的的網絡總是出現掉線的問題,后來說是ARP欺騙,要我們用ANTIARPSNIFFER。小弟不才,
也想搞清楚這個ARP欺騙到底是個什么東西。于是在網上查了點資料,看了點文檔。也算是DIY了一個出來,而
且可以不被ANTIARPSNIFFER發現的讓對方主機在網絡中死掉。于是把這個小東西貼出來讓大家一起把玩一下。
在下菜鳥一只,還請高手指教
參考資料:《TCP/IP詳解II:實現》,《WINPCAP 3.0 DOC》,《交換網絡中的嗅探和ARP欺騙》(一位叫RefDom
的大哥很久前寫的帖子)
閱讀全文
posted @
2011-08-19 11:55 日需博客 閱讀(4950) |
評論 (0) 編輯
Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open處理
摘要: 之前已經在freebsd主機登陸到dreamhost.com的ssh密鑰實驗是成功的,參考網址
http://wiki.dreamhost.com/SSH#Passwordless_Login
但今天嘗試把密鑰放到debian系統的/root/.ssh/id_rsa中,然后在debian的終端界面輸入
ssh xxxx@xxxx.dreamhost.com
這樣就出現 Permissions 0644 for ‘/root/.ssh/id_rsa’ are too open. 等錯誤顯示了,經google查詢下,原來只要把權限降到0600就ok了
輸入命令
chmod 0600 /root/.ssh/id_rsa
然后再
ssh xxxx@xxxx.dreamhost.com
這樣就可以密鑰登陸了.
閱讀全文
posted @
2011-08-19 01:42 日需博客 閱讀(12755) |
評論 (0) 編輯
用OpenSSH構建SSH服務器
摘要: SSH服務和Telnet服務一樣,通過遠程登錄登錄到系統,在遠程操控系統。但它與Telnet的不同點就是:Telnet在傳輸的過程中是平文傳輸,而SSH是將傳輸內容加密,在傳送的過程中保證了傳送內容的保密性,從而提高了系統的安全性。
在這里,我們不準備將SSH服務作為用戶上傳下載文件的工具。我們只用SSH服務的開通為遠程管理系統提供方便。另外在用戶認證方式上,為了服務器和用戶的安全,禁止用戶密碼的認證方式,而基于“鑰匙”的方式。
閱讀全文
posted @
2011-08-16 18:54 日需博客 閱讀(303) |
評論 (0) 編輯
C#中使用XSLT文件將XML文檔轉換為HTML
摘要: 1.創建XSLT文件,定義格式;
2.在C#中使用XslCompiledTransform對象的load()方法加載XSLT文件;
3.使用Transform()方法轉換XML文檔。
閱讀全文
posted @
2011-08-15 09:53 日需博客 閱讀(872) |
評論 (0) 編輯
Windows平臺下的內存管理
摘要: 1. Windows平臺下主要的內存管理途徑
申請
釋放
new
delete
malloc
free
CoTaskMemAlloc
CoTaskMemFree
IMalloc::alloc
IMalloc/free
GlobalAlloc
GlobalFree
LocalAlloc
LocalFree
HeapAlloc
HeapFree
VirtualAlloc
VirtualFree
閱讀全文
posted @
2011-08-15 09:21 日需博客 閱讀(492) |
評論 (0) 編輯
malloc,new,VirtualAlloc,HeapAlloc性能(速度)比較
摘要: 這里比較的VC++編譯的C++代碼中的性能
我用的是VC6.0測試的
就不介紹這幾個的用法了
我寫了一段簡單的測試代碼
測試結果是:
malloc:390
new:391
VirtualAlloc:454
HeapAlloc:47
閱讀全文
posted @
2011-08-15 09:19 日需博客 閱讀(1389) |
評論 (2) 編輯
IIS Express refuses to start
摘要: "Starting IIS Express...
Report ListenerChannel stopped due to failure; ProtocolId:http,ListenerChannelId:0
HostableWebCore activation failed.
Unable to start iisexpress.
The interface is unknown.
For more information about the error, run iisexpress.exe with the tracing switch enabled."
閱讀全文
posted @
2011-08-12 22:05 日需博客 閱讀(1631) |
評論 (0) 編輯
IIS Express 的配置、使用和注意點
摘要: VS2010的SP1引入了IIS Express支持,這是值得高興的事情……因為自帶的ASP.net Development Server只能單站點運行、不能設置虛擬目錄、多少個項目就會出現多少個等等等等巴拉巴拉,我對它恨之入骨,總之,很長一段時間內我進行開發實際上都是用IIS的。但是用IIS有不方便的地方,就是必須開啟IIS Admin服務,而且VS必須以管理員模式運行才能正常打開項目和調試。每次都以管理員模式啟動已經比較麻煩了,比較郁悶的是,以管理員模式啟動的vs處于特權狀態,所以程序間的文件拖放就失效了……換句話說,如果我想從資源管理器中直接拖一個文件到vs中打開,就辦不到了。
閱讀全文
posted @
2011-08-12 21:38 日需博客 閱讀(896) |
評論 (0) 編輯
LNMP安裝配置-linux Nginx/Mysql/Php/Phpmyadmin(CentOS vps)
摘要: 只在vps服務器搭建vpn線路,顯然有些浪費。比如還可以在Linux的vps服務器上安裝lnmp網站服務器。
LNMP是指在linux系統下安裝Nginx服務器、Mysql數據庫、Php (Phpmyadmin)。安裝LNMP過程很簡單,另外也有LNMP一鍵安裝包,因此甚至不需要進行一些LNMP配置,網站服務器就可以工作了。但是lnmp一鍵安裝的缺點是如果安裝過程出現了問題,配置起來就困難很多了。
為什么不用lamp,即沒有采用Apache服務器的原因是該VPS配置性能不高,跑apache服務器將會非常吃力。而Nginx是一個高性能的http、反向代理服務器,Nginx的特點就是輕便和高性能,非常適合低配置的VPS搭建網站服務器。下面是遠方博客在CentOS系統下安裝和配置LNMP、安裝FTP服務器vsftpd、并搭建wordpress博客網站的過程,記錄供備忘并交流。
閱讀全文
posted @
2011-08-12 00:27 日需博客 閱讀(2230) |
評論 (0) 編輯
VPS構建web服務器介紹
摘要: 廉價的VPS都不約而同的會提供Linux的系統,并在控制面板上也會提供各種Linux系統的Reinstall,比說說經典的Redhat、Debian、Centos、Fedora 還有Ubuntu。選擇什么系統的話,還是因人而異,很多玩Linux服務器的老手都會推薦Centos,因為相對比入手簡單特別是國內有關的中文教材比較多,個人比較喜歡Debian,Debian占用資源很少,穩定性也不錯,可惜國內有關的教程不多。。而至于源于Debian 的 Ubuntu,雖然在使用上比Debian方便多,但是也存在很多問題,桌面版本的系統使用起來相當的舒服,就是服務器系統的使用,個人不傾向Ubuntu。理論上64位的系統要比32位的要快,但是在廉價VPS母機的有限硬件條件下,其實差別甚微。
閱讀全文
posted @
2011-08-12 00:11 日需博客 閱讀(296) |
評論 (0) 編輯
git命令快速參考
摘要: 1. 創建一個新的版本庫
從一個壓縮包中創建:
$ tar xzf project.tar.gz
$ cd project
$ git init #Initialized empty Git repository in .git/
$ git add .
$ git commit
閱讀全文
posted @
2011-08-11 11:50 日需博客 閱讀(449) |
評論 (0) 編輯
免費申請ssl證書,web服務器適用
摘要: 越來越多的企業需要使用SSL進行加密的web訪問服務,如:webmail。
對于中小企業來說,如何能夠擁有由正式的授權機構簽發的證書,避免手動確認自簽署證書的尷尬,而又能省去每年購買SSL證書服務的費用呢?
閱讀全文
posted @
2011-08-10 00:14 日需博客 閱讀(2011) |
評論 (0) 編輯
VC++下使用ADO編寫數據庫程序
摘要: 準備:
(1)、引入ADO類
#import "c:\program files\common files\system\ado\msado15.dll"
no_namespace
rename ("EOF", "adoEOF")
(2)、初始化COM
在MFC中可以用AfxOleInit();非MFC環境中用:
CoInitialize(NULL);
CoUnInitialize();
閱讀全文
posted @
2011-08-09 14:21 日需博客 閱讀(355) |
評論 (0) 編輯
GUI程序也能使用控制臺窗口
摘要: 很多時候,調試GUI程序是很不方便的,通常的做法是使用MessageBox,但是作為一個模態窗口,它經常產生不必要的消息,比如killfocus, setfocus或者paint,從而影響調試的執行過程。當然,使用vc的調試器也不錯,但是這樣也很容易造成窗口切換從而產生干擾消息。
因此,如果能像在控制臺程序里那樣使用cin/cout對象或printf族函數,會使得調試過程方便得多。而通常,windows是不會為GUI程序產生單獨的命令行窗口的。所以我們是看不到使用標準輸入輸出流輸出的東西的。既然系統不提供,那就自己動手“造”出一個來吧!
下面是一個簡單的控制臺窗口對象,它可以為你的程序創建一個命令行窗口,并將stdout,stdin和stderr重定向到這個命令行窗口。在程序中建立一個這樣的對象之后,就可以直接使用cin/cout/*printf來操縱這個新的命令行窗口了!5 f8 I$ l4 o- b3 L, m% h
閱讀全文
posted @
2011-08-09 13:57 日需博客 閱讀(621) |
評論 (0) 編輯
位運算的用處搜集
摘要: 位運算應用口訣
清零取反要用與,某位置一可用或
若要取反和交換,輕輕松松用異或
移位運算
要點 1 它們都是雙目運算符,兩個運算分量都是整形,結果也是整形。
2 " < <" 左移:右邊空出的位上補0,左邊的位將從字頭擠掉,其值相當于乘2。
3 ">>"右移:右邊的位被擠掉。對于左邊移出的空位,如果是正數則空位補0,若為負數,可能補0或補1,這取決于所用的計算機系統。
4 ">>>"運算符,右邊的位被擠掉,對于左邊移出的空位一概補上0。
閱讀全文
posted @
2011-08-08 13:29 日需博客 閱讀(285) |
評論 (0) 編輯
整合 Google 開源 C++ 代碼
摘要: Google 開源了很多優秀的 C++ 程序庫,本文介紹如何將其中幾個整合到一起。
本文涉及的 Google 庫有:
gflags - 命令行參數解析。可以完全用命令行來配置應用程序,省去配置文件。
gtest - C++ 單元測試框架
gmock - C++ 單元測試中用到的 mock
glog - 日志庫
protobuf - 高效的網絡協議格式
還有第三方的 libunwind 和 zlib。
閱讀全文
posted @
2011-08-08 13:11 日需博客 閱讀(571) |
評論 (0) 編輯
linux下automake用法
摘要: 作為Linux下的程序開發人員,大家一定都遇到過Makefile,用make命令來編譯自己寫的程序確實是很方便。一般情況下,大家都是手工寫一個簡單Makefile,如果要想寫出一個符合自由軟件慣例的Makefile就不那么容易了。
在本文中,將給大家介紹如何使用 autoconf和automake兩個工具來幫助我們自動地生成符合自由軟件慣例的Makefile,這樣就可以象常見的GNU程序一樣,只要使用“./configure”,“make”,“make install”就可以把程序安裝到Linux系統中去了。這將特別適合想做開放源代碼軟件的程序開發人員,又或如果你只是自己寫些小的Toy程序,那么這個文章對你也會有很大的幫助。
閱讀全文
posted @
2011-08-08 11:58 日需博客 閱讀(2533) |
評論 (0) 編輯
介紹LuaPlus: 好用的Lua For C++擴展
摘要: LuaPlus是Lua的C++增強,也就是說,LuaPlus本身就是在Lua的源碼上進行增強得來的。用它與C++進行合作,是比較好的一個選擇。
LuaPlus目前版本為:LuaPlus for Lua 5.01 Distribution Build 1080 (February 28, 2004)。大家可以到http://luaplus.org/ 站點下載:
源碼 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081.zip)
目標碼 (http://wwhiz.com/LuaPlus/LuaPlus50_Build1081_Win32Binaries.zip)
介紹LuaPlus: 好用的Lua For C++擴展 沐楓網志
閱讀全文
posted @
2011-08-08 11:36 日需博客 閱讀(580) |
評論 (1) 編輯
非常優秀的vimrc設置
摘要: 非常優秀的vimrc設置。反正我很喜歡
" An example for a vimrc file.
"
" Maintainer: a18ccms
" Last change: 2010 03 12
"
" To use it, copy it to
" for Unix and OS/2: ~/.vimrc
" for Amiga: s:.vimrc
" for MS-DOS and Win32: $VIM\_vimrc
" for OpenVMS: sys$login:.vimrc
" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
finish
endif 閱讀全文
posted @
2011-08-08 11:21 日需博客 閱讀(1462) |
評論 (0) 編輯
json格式入門和總結
摘要: 數據交換的格式,從結構上看,所有的數據(data)最終都可以分解成三種類型:
第一種類型是標量(scalar),也就是一個單獨的字符串(string)或數字(numbers),比如"北京"這個單獨的詞。
第二種類型是序列(sequence),也就是若干個相關的數據按照一定順序并列在一起,又叫做數組(array)或列表(List),比如"北京,上海"。
第三種類型是映射(mapping),也就是一個名/值對(Name/value),即數據有一個名稱,還有一個與之相對應的值,這又稱作散列(hash)或字典(dictionary),比如"首都:北京"。
閱讀全文
posted @
2011-08-08 11:07 日需博客 閱讀(422) |
評論 (0) 編輯
修改IAT實現本進程API HOOK
摘要: //修改IAT實現本進程API HOOK
//coded by xicao
//QQ:327062448
//E-MAIL:xicao54007@sina.com
#include
#include //ImageDirectoryEntryToData
#pragma comment(lib,"imagehlp.lib")
/************************************************************/
char *szModName = NULL ;
char *szHacked = "不好意思hook到了!" ;
DWORD dwHookFun ;
DWORD dwHookApiAddr;
PIMAGE_IMPORT_DESCRIPTOR pImportDesc ;
PIMAGE_THUNK_DATA32 pThunk;
U 閱讀全文
posted @
2011-08-08 11:03 日需博客 閱讀(1481) |
評論 (0) 編輯
經典編程書籍(C++, 網絡, Windows, Linux)
摘要: 兩年前就給自己列出了一個讀書清單,但進展緩慢,看的經典書籍仍然寥寥可數,慚愧中......
現在將這個書單重新修改,一方面鞭策自己學習,另一方面也表達對大牛們有如滔滔江水般的敬仰之意。
書單中列舉的都是相關領域的經典書籍,必讀之作。此書單的編輯參考了很多網站,包括一些名家的推薦,例如侯捷,孟巖,榮耀,潘愛民等等,在此也向這些前輩表示感謝。^_^
閱讀全文
posted @
2011-08-08 10:59 日需博客 閱讀(601) |
評論 (0) 編輯
LPTSTR、LPCSTR、LPCTSTR、LPSTR的來源及意義
摘要: UNICODE:它是用兩個字節表示一個字符的方法。比如字符'A'在ASCII下面是一個字符,可'A'在UNICODE下面是兩個字符,高字符用0填充,而且漢字'程'在ASCII下面是兩個字節,而在UNICODE下仍舊是兩個字節。UNICODE的用處就是定長表示世界文字,據統計,用兩個字節可以編碼現存的所有文字而沒有二義。
MBCS,它是多字節字符集,它是不定長表示世界文字的編碼。MBCS表示英文字母時就和ASCII一樣(這也是我們容易把MBCS和ASCII搞混的原因),但表示其他文字時就需要用多字節。
WINDOWS下面的程序設計可以支持MBCS和UNICODE兩種編碼的字符串,具體用那種就看你定義了MBCS宏還是UNICODE宏。MBCS宏對應的字符串指針是char*也就是LPSTR,UNICODE對應的指針是unsigned short*也就是LPWSTR,為了寫程序方便微軟定義了類型LPTSTR,在MBCS下他就是char*, 在UNICODE下它是unsigned char*,這樣你就可以重定義一個宏進行不同字符集的轉換了。
閱讀全文
posted @
2011-08-08 10:58 日需博客 閱讀(633) |
評論 (0) 編輯
使用KeepAlive檢測網絡異常
摘要: #include "netinet/tcp.h"
int keepAlive = 1; //設定KeepAlive
int keepIdle = 30; //開始首次KeepAlive探測前的TCP空閉時間
int keepInterval = 30; //兩次KeepAlive探測間的時間間隔
int keepCount = 3; //判定斷開前的KeepAlive探測次數
if(setsockopt(sockfd,SOL_SOCKET,SO_KEEPALIVE,(void*)&keepAlive,sizeof(keepAlive)) == -1)
{
printf("Socket Option setting(SO_KEEPALIVE) fail !\n");
return FALSE;
}
if(setsockopt(sockfd,SOL_TCP,TCP_KEEPIDLE,(void *)&ke
閱讀全文
posted @
2011-08-08 10:53 日需博客 閱讀(556) |
評論 (0) 編輯
u盤/移動硬盤(usb hd)安裝多種linux live CD
摘要: 如果U盤夠大,可以在一個U盤安裝slax,pclinuxos,Linux Mint,puppy Linux等多種live linux。移動硬盤原理相同,不做區分。
因為U盤常用來拷貝文件,fat格式在多種操作系統上通用,所以用grub4dos管理U盤引導。
把U盤格成HDD格式:
用DiskGenius 3.2把U盤格式化為USB-HDD格式,推薦使用FAT32分區;或者用U盤格式化工具(HPUSBFW.EXE )格式化為 HDD 格式。還有其它 工具如FlashBoot、 WIN PM 等。
將引導代碼寫入U盤mbr:
Win32下,運行grubinst_gui.exe ,在“磁盤”處選中U盤,在“選項”區選中“不保存原來的mbr”、“不引導原來的mbr”、“啟動時不搜索軟盤”、“輸出詳細信息”,點擊“安裝”即可。
拷貝grub4dos的grub.exe、grldr、menu.lst到u盤根目錄。
現在,U盤已經可以用grub引導,把電腦設置為U盤優先引導,測試一下grub的引導。
安裝linux live cd的過程分
閱讀全文
posted @
2011-08-06 00:18 日需博客 閱讀(2044) |
評論 (0) 編輯
Crypto++入門學習筆記(DES、AES、RSA、SHA-256)
摘要: 背景(只是個人感想,技術上不對后面的內容構成知識性障礙,可以skip):
最近,基于某些原因和需要,筆者需要去了解一下Crypto++庫,然后對一些數據進行一些加密解密的操作。
筆者之前沒接觸過任何加密解密方面的知識(當然,把每個字符的ASCII值加1之流對明文進行加密的“趣事”還是干過的,當時還很樂在其中。),甚至一開始連Crypto++的名字都沒有聽過,被BS了之后,就開始了Crypto++的入門探索過程。
最初,大概知道了要了解兩大類算法中的幾個算法——對稱加密算法:DES、AES(后來因為人品好的緣故也了解了下非對稱加密算法RSA,后文會詳述何謂“人品好”);散列算法(需要通過Hash運算):SHA-256。
起初,筆者以為這樣的知名算法在網上應該有很多現成的例子。筆者比較懶,對于自己不熟悉的東西,總希望找捷徑,直接找別人現(在已經寫)成可(編譯運)行的代碼然后施展ctrl + C,ctrl + V算法(咳,什么算法,是大法!!!)。
However,發覺網上的例子不是稀缺,就是只有代碼沒有解釋。筆者覺得很難忍受這樣的“莫名其妙”(奇怪的
閱讀全文
posted @
2011-08-05 16:37 日需博客 閱讀(1816) |
評論 (0) 編輯
Crypto++ 的使用方法
摘要: 從官方網下載的Crypto++庫是開源的,只有源文件和幾個可以生成lib、dll的工程,以及一個使用的例子工程,因此希望生成自己建的工程能使用的SDK。
1.編譯鏈接生成cryptlib.lib
打開cryptest.sln,分別在Debug模式和Release模式下編譯鏈接cryptlib工程,成功后會在cryptopp54\\Win32\\output\\debug和cryptopp54\\Win32\\output\\release下生成cryptlib.lib文件。作者當時用的是Crypto++ 5.4版本。
Build時方法是,右擊Solution Explorer中的cryptlib工程,單擊build。第一次時它會報錯說“d:\\cryptopp54\\adler32.cpp(3) : fatal error C1033: cannot open program database ’d:\\cryptopp54\\win32\\cryptlib\\debug\\vc80.idb’”,沒關系,按這樣再build一次,就
閱讀全文
posted @
2011-08-05 16:24 日需博客 閱讀(5308) |
評論 (0) 編輯
人生第一篇博客文章,寫寫VAssistX的VA Snippet Editor
摘要: 首先,先上效果代碼
1//********************************************************************
2// TESTCLASS.H 文件注釋
3// 文件名 : TESTCLASS.H
4// 文件路徑: J:\CODING\TEST\C++解疑\CYUYAN\
5// 作者 : RIPPLE
6// 創建時間: 2009/10/3 11:02
7// 文件描述:
8//*********************************************************************
9#ifndef _H_TESTCLASS_H_
10#define _H_TESTCLASS_H_
11
12#include
13using namespace std; 閱讀全文
posted @
2011-08-05 09:12 日需博客 閱讀(1746) |
評論 (0) 編輯
C++重載operator的示例
摘要: 以下示例中定義了一個class test, 重載了<, +, +=, =, ==, <<, >>等符號:
#include
#include
using namespace std;
class test{
public:
int v;
/*構造函數*/
test():v(0){}
test(const int &a):v(a){}
test(const test &t1):v(t1.v){}
/*以下重載小于號 < */
//比較兩個對象的大小
bool operator<(const test &t1) const{
return (v < t1.v);
} 閱讀全文
posted @
2011-08-04 14:35 日需博客 閱讀(702) |
評論 (0) 編輯
Windows完成端口與Linux epoll技術簡介
摘要: WINDOWS完成端口編程
1、基本概念
2、WINDOWS完成端口的特點
3、完成端口(Completion Ports )相關數據結構和創建
4、完成端口線程的工作原理
5、Windows完成端口的實例代碼
Linux的EPoll模型
1、為什么select落后
2、內核中提高I/O性能的新方法epoll
3、epoll的優點
4、epoll的工作模式
5、epoll的使用方法
6、Linux下EPOll編程實例
總結
閱讀全文
posted @
2011-08-04 13:49 日需博客 閱讀(381) |
評論 (0) 編輯
C++類型轉換總結
摘要: C風格的強制類型轉換(Type Cast)很簡單,不管什么類型的轉換統統是:
TYPE b = (TYPE)a。
C++風格的類型轉換提供了4種類型轉換操作符來應對不同場合的應用。
const_cast,字面上理解就是去const屬性。
static_cast,命名上理解是靜態類型轉換。如int轉換成char。
dynamic_cast,命名上理解是動態類型轉換。如子類和父類之間的多態類型轉換。
reinterpreter_cast,僅僅重新解釋類型,但沒有進行二進制的轉換。
4種類型轉換的格式,如:TYPE B = static_cast(TYPE)(a)。
閱讀全文
posted @
2011-08-03 13:57 日需博客 閱讀(259) |
評論 (0) 編輯
Gina.dll登錄功能的注冊表實現
摘要: 本文主要介紹Gina.dll登錄功能的注冊表實現,在前文中,我們知道WlxLoggedOutSAS與WlxActivateUserShell函數分為登錄之前的處理函數與登錄之后的處理函數。于是,我們就可以結合注冊表的一些功能來實現Gina.dll的登錄。
閱讀全文
posted @
2011-08-03 13:42 日需博客 閱讀(1067) |
評論 (0) 編輯
Windows開機登錄認證與Gina DLL
摘要: Windows的開機密碼認證模塊一般是由Gina DLL完成的。在NT/2000中交互式的登陸支持是由WinLogon調用GINA DLL實現的,GINA DLL提供了一個交互式的界面為用戶登陸提供認證請求。
閱讀全文
posted @
2011-08-03 13:41 日需博客 閱讀(1352) |
評論 (0) 編輯
Kompex SQLite Wrapper for C++ - Examples
摘要: Here you can see some examples.
It shows a part of the functionality of the wrapper and how you can use it.
You can find more examples in the example application (contained in download package).
1. open a database and create a statement instance for sql queries/statements
// open database
Kompex::SQLiteDatabase *pDatabase = new Kompex::SQLiteDatabase("test.db", SQLITE_OPEN_READWRITE, 0);
// create statement instance for sql queries/statements
Kompex::SQLite
閱讀全文
posted @
2011-08-02 14:12 日需博客 閱讀(1774) |
評論 (1) 編輯
利用Google API快速生成QR二維碼
摘要: 昨天發現很多網站都貼上了自己網址的二維碼,我覺得這樣挺有意思的,就研究了一下怎樣生成二維碼。結果發現,現在來說生成二維碼最簡單的方法是使用Google Chart API來實現,再次膜拜Google大神~
Google Chart API是一套可以讓你在線生成報表圖的系統,通過URL你可以得到各種圖表。
舉個例子:你在瀏覽器中輸入
https://chart.googleapis.com/chart?cht=qr&chs=200×200&choe=UTF-8&chld=L|4&chl=http://Codeup.org
你將得到一個內容為本站網址的QR二維圖。
回過頭來我們再介紹一下二維碼……好像這話放的位置不對,你們湊活著看吧……
閱讀全文
posted @
2011-07-27 00:16 日需博客 閱讀(5403) |
評論 (3) 編輯