2008年3月6日
#
最近看一些代碼時(shí),邊看邊改代碼,發(fā)現(xiàn)getJSON這個(gè)方法沒法正常使用。
1 var sURL= "http://api.xxxxxx.com/services/feeds/
2 xxxxxxx?format=json&callback=?";
3 $.getJSON(sURL, function(data) {
4 // do something with the JSON data returned
5 }); // end get
究其原因,發(fā)現(xiàn)url里有個(gè)callback,這里使用的是JSONP,一種跨域技術(shù)。
網(wǎng)上搜了下JSONP,多數(shù)都是在講如何使用,而沒有說(shuō)明為什么它能跨域,且沒有說(shuō)明url服務(wù)器端的代碼時(shí)如何生成的。
這方面,上面的文章里有比較詳細(xì)的描述。
1 function jsonp(url,callback,name, query)
2 {
3 if (url.indexOf("?") > -1)
4 url += "&jsonp="
5 else
6 url += "?jsonp="
7 url += name + "&";
8 if (query)
9 url += encodeURIComponent(query) + "&";
10 url += new Date().getTime().toString(); // prevent caching
11
12 var script = document.createElement("script");
13 script.setAttribute("src",url);
14 script.setAttribute("type","text/javascript");
15 document.body.appendChild(script);
16 }
客戶端的javascript代碼會(huì)有如上的操作,代碼不難,很容易理解,也就是加了一個(gè)script標(biāo)簽。
而服務(wù)器端會(huì)返回
callbackFunction( { "x": 10, "y": 15} );
這樣的數(shù)據(jù)。
這其實(shí)是一段javascript代碼,
callbackFunction是方法名,{ "x": 10, "y": 15}是參數(shù)。客戶端代碼里必須要有callbackFunction方法的定義。
1 public partial class JSONP : System.Web.UI.Page
2 {
3 protected void Page_Load(object sender, EventArgs e)
4 {
5 if (!string.IsNullOrEmpty(Request.QueryString["jsonp"]) )
6 this.JsonPCallback();
7 }
8
9 public void JsonPCallback()
10 {
11 string Callback = Request.QueryString["jsonp"];
12 if (!string.IsNullOrEmpty(Callback))
13 {
14 // *** Do whatever you need
15 Response.Write(Callback + "( {\"x\":10 , \"y\":100} );");
16 }
17
18 Response.End();
19 }
20 }
之后客戶端會(huì)調(diào)用
callbackFunction。
使用JQuery的getJSON方法后,callback部分會(huì)變成如下形式。
callback=jQuery1710461701650187642_1326201333794&_=1326201356534
callbackFunction自然就是jQuery1710461701650187642_1326201333794部分了。
返回來(lái)的數(shù)據(jù)也會(huì)是
jQuery1710461701650187642_1326201333794( { "x": 10, "y": 15} ) 這種形式。
最后JQuery會(huì)調(diào)用匿名函數(shù)function(data),data即為json數(shù)據(jù)。
JQuery已經(jīng)將客戶端部分實(shí)現(xiàn)了,服務(wù)器端也得遵循同樣的規(guī)則才能實(shí)現(xiàn)跨域。
*這里有一點(diǎn),JQuery如何將匿名函數(shù)換名字的?有哪位大俠知道的,請(qǐng)用簡(jiǎn)單的語(yǔ)言講解下。
記錄一個(gè)小問題。
在Win7系統(tǒng)上裝一個(gè)軟件時(shí)失敗,提示2個(gè)DLL沒有注冊(cè)成功。
于是準(zhǔn)備手動(dòng)注冊(cè)。
運(yùn)行
cd C:\WINDOWS\system32\
regsvr32 xxx.dll
后出現(xiàn)如下錯(cuò)誤:
The module "xxx.dll" was loaded but the call to DllRegisterServer failed with error code 0x80004005.
網(wǎng)上搜索一番后,找到如下地址
http://forums.cnet.com/7723-12546_102-237219.html
其中有條說(shuō)run as administrator,這是權(quán)限問題,不過(guò)我登陸的就是管理員賬號(hào),應(yīng)該不存在這樣的問題。
抱著姑且一試的想法,寫了個(gè)cmd文件,右鍵run as administrator后,居然真的注冊(cè)成功了!
看來(lái)Win7系統(tǒng)真的很安全,就算是管理員,也得來(lái)個(gè)run as administrator后才能做一些事,是在向sudo學(xué)習(xí)么?
最近試著用html5在頁(yè)面加載mp3文件。在chrome下測(cè)試通過(guò)了,偶然的用firefox4打開,居然沒法用……
懷疑哪里寫錯(cuò)了,可audio標(biāo)簽也就幾個(gè)屬性而已。
幾經(jīng)搜索,最后發(fā)現(xiàn)的真相讓我很崩潰……firefox的audio不支持播放mp3。
Codec support in modern desktop browsers Browser | Ogg Vorbis | MP3 | WAV |
FireFox 3.6+ | ? |
| ? |
Safari 5+ |
| ? | ? |
Chrome 6 | ? | ? |
|
Opera 10.5+ | ? |
| ? |
Internet Explorer 9 (beta) |
| ? | ? |
出自 http://html5doctor.com/native-audio-in-the-browser/
看了這個(gè)表之后,雖然很多瀏覽器都支持html5,但如果你想播放一個(gè)文件,任何一種格式都不能讓所有瀏覽器正常播放。
哈哈哈,html5定義了媒體標(biāo)簽,但沒規(guī)定媒體的默認(rèn)編碼格式,導(dǎo)致各瀏覽器各自為政。
真是不方便……
GD畫圖時(shí)通常顯示文字是用imagettftext方法,但它的參數(shù)必須是UTF-8編碼的。
此時(shí)得注意php文件的編碼
1.如果是UTF-8的,直接傳硬編碼字符串就可正常顯示
2.如果是gb2312或其它的,則必須進(jìn)行轉(zhuǎn)換 mb_convert_encoding($str, 'UTF-8')
另外,還有一種情況,JIS-mapped Japanese Font Support被開啟時(shí),imagettftext就必須傳SJIS編碼,傳UTF-8反而會(huì)亂碼。
此時(shí)必須將其轉(zhuǎn)碼后傳入,mb_convert_encoding($sStr,"SJIS", "UTF-8")。
以上。
在次提供TurboC3.0英文版下載。
TCPP.rar
上網(wǎng)須謹(jǐn)慎,下載請(qǐng)殺毒。
TC3.0窗口模式,邊框有中文亂碼。全屏就沒有。
原因是當(dāng)前的code page是中文的936,可以在cmd中用chcp命令查看。
利用命令 chcp 437 改為老美的,就可以了。
具體操作
啟動(dòng)TCPP.exe->File->DOS Shell->chcp 437->exit
回到TCPP后就沒亂碼了。
但這個(gè)方法治標(biāo)不治本,每次啟動(dòng)TCPP仍是亂碼。
另一種方法
在TCPP窗口的左上角單擊,出現(xiàn)菜單(包含最大化,最小化,屬性等),在默認(rèn)選項(xiàng)的第一個(gè)頁(yè)面“選項(xiàng)”里Default code page選擇437 (OEM United Status)。因?yàn)槲夷壳笆褂玫氖怯⑽南到y(tǒng),不知道中文系統(tǒng)中是否有該項(xiàng)。如果沒有該項(xiàng),請(qǐng)自行尋找方法讓它有。
之后,一切OK,至少我OK了……
中鐵快運(yùn) 跨省 4.3元/KG
一般3天到,但有時(shí)貨運(yùn)量大,無(wú)法確定到貨時(shí)間
上午10:30電話過(guò)去,說(shuō)下午2點(diǎn)后才能來(lái)取貨,我說(shuō)下午不在,比較緊急,實(shí)際上取貨師傅11點(diǎn)多就到了
來(lái)取貨的人有2人,開的是面包車,能一次運(yùn)走較多貨物
貨物較散時(shí)會(huì)收15元包裝費(fèi)。
一般人不支持貨到付款,只有大客戶才支持。
先交費(fèi),多退少補(bǔ)(一般會(huì)多收),發(fā)票不當(dāng)場(chǎng)發(fā),之后會(huì)聯(lián)系你或郵寄給送貨地址(具體不詳)。
我是當(dāng)天要離開,沒法將發(fā)票給我,他們說(shuō)會(huì)將發(fā)票和多的錢放到包裝的貨物里。
順豐快遞 跨省 1KG內(nèi)20元,超過(guò)部分12元/KG
到貨很快,合肥到杭州一天內(nèi)能送到。
來(lái)取貨的只有1人,開電動(dòng)車,貨物較多時(shí)無(wú)法一次取完。
支持貨到付款,無(wú)包裝費(fèi)。
客服說(shuō)1小時(shí)內(nèi)到,通常半小時(shí)左右會(huì)有取貨人來(lái)電話聯(lián)系,之后看情況,有時(shí)候半小時(shí)能到,有時(shí)候很拖。
已經(jīng)有人做了介紹
http://www.hzlzh.com/sina-app-engine-beta/
對(duì)我這種平時(shí)寫點(diǎn)小應(yīng)用自?shī)首詷返膫€(gè)人開發(fā)者來(lái)說(shuō),最重要的變化就是SAE不再免費(fèi)了
1RMB=50云豆
SAE進(jìn)入beta后發(fā)放給內(nèi)測(cè)開發(fā)者5000云豆,我去帳號(hào)里查看時(shí)剩下4945,感覺用得有些快
平時(shí)也沒寫多少東西,也就10多個(gè)php頁(yè)面,以后還是側(cè)重玩GAE吧……
雖然SAE相比GAE規(guī)模不大,但也有些不錯(cuò)的地方
譬如cron,同樣的5min間隔執(zhí)行的東西,SAE比GAE更準(zhǔn)些
譬如客戶端,雖然SAE沒法在本地執(zhí)行代碼,但能從服務(wù)器下載應(yīng)用的最新代碼很不錯(cuò)
之前GAE寫的東西,有些是在公司電腦里寫的,有些是在家里寫的,現(xiàn)在都不知道家中電腦里的代碼是不是最新的了
SAE進(jìn)入beta后,能在線查看修改代碼,使用的編輯器是ecoder,
http://ecoder.quintalinda.com/
SAE很多其他功能還沒用到,就不多做評(píng)價(jià)了
以下說(shuō)點(diǎn)胡話吧
國(guó)內(nèi)整體環(huán)境有些急功近利,運(yùn)營(yíng)1年多了,沒任何收入,SAE也是國(guó)內(nèi)第一個(gè)吃螃蟹的,能否盈利也不清楚,投資者沉不住氣,SAE團(tuán)隊(duì)大概也是頂不住上層的壓力,迫不得已開始收費(fèi)計(jì)劃。
總感覺SAE還沒成熟到能收費(fèi)的階段,因?yàn)镾AE上的應(yīng)用并不多,我只見到10多個(gè)而已
應(yīng)用能減少建站難度。應(yīng)用少會(huì)限制SAE的用途,SAE面向的群體是什么呢,現(xiàn)在能干什么呢?個(gè)人的話,租php空間來(lái)干嘛,主要是搭博客,建論壇,搞CMS;想創(chuàng)業(yè)的,大概不會(huì)選SAE,因?yàn)橄拗铺啵蝗缱庵鳈C(jī),自由度更高;企業(yè)的話,注重的是穩(wěn)定,現(xiàn)在還不會(huì)嘗試新出來(lái)的SAE
開發(fā)SAE開源項(xiàng)目,SAE會(huì)獎(jiǎng)勵(lì)云豆。應(yīng)用不多這點(diǎn)也能靠收費(fèi)來(lái)激發(fā)開發(fā)者多發(fā)開些SAE開源項(xiàng)目來(lái)彌補(bǔ),不知效果會(huì)如何
現(xiàn)在還真不知道SAE會(huì)發(fā)展得如何……
預(yù)計(jì)近期SAE應(yīng)該會(huì)開發(fā)注冊(cè)吧,新帳號(hào)里應(yīng)該會(huì)有一些云豆,給開發(fā)者試用,然后期待這些新鮮血液帶來(lái)更多付費(fèi)用戶和SAE開源項(xiàng)目,希望SAE能發(fā)展下去
我出差的時(shí)候(是指在日本)
張X(日本那邊的人)說(shuō):“這個(gè)叫李X的代碼寫得真爛啊。”
我:“他是我室友。”過(guò)了一會(huì)
張X:“這個(gè)叫唐XX的寫得更爛。”
我:“這個(gè)是我前室友。”再過(guò)了一會(huì)
張X很無(wú)奈地問我:“這個(gè)叫鄭X一定是你的前前室友吧?”
我。。。
今天遇到一個(gè)問題,寫了一個(gè)頁(yè)面,抓取其他某站點(diǎn)的內(nèi)容,然后重組成新的頁(yè)面,主要是一個(gè)圖片的展示(gallery)。
但是該站點(diǎn)做了防盜鏈,圖片無(wú)法顯示,403.
這種盜鏈主要是靠Referer來(lái)實(shí)現(xiàn)的,也就是說(shuō)更改了Referer就能顯示圖片,但Referer不是在頁(yè)面編碼能解決的。
Referer是瀏覽器發(fā)出的,只能更改瀏覽器才能更改Referer。
firefox有一個(gè)插件refcontrol,可以做到這一點(diǎn),不過(guò)不是我要說(shuō)的
繼續(xù)研究,該站提供一種embed功能,供其他頁(yè)面調(diào)用,此時(shí)就能允許其他站點(diǎn)直接顯示圖片。
一般網(wǎng)站是不提供這種功能的,所以下面方法并不是所有網(wǎng)站適用的。
通過(guò)對(duì)比header內(nèi)容,最終知道是它在cookie里設(shè)定了一個(gè)字段,以此來(lái)判別。
那么,只要我設(shè)定該值即可。
兩種方法
1.服務(wù)器端設(shè)定set-cookie,試驗(yàn)證明,此法不可行,主要是domain無(wú)法更改到對(duì)應(yīng)站點(diǎn)的domain下
2.客戶端用javascript設(shè)定document.cookie。仍不行……,原因不明,大概也是無(wú)法改domain吧
這下只剩最后一招了,在我的頁(yè)面里直接調(diào)用embed頁(yè)面,讓它替我設(shè)cookie,如何調(diào)用呢?
首先想到用frame,試了下,frame和圖片幾乎同時(shí)發(fā)出request,這樣cookie還沒設(shè)定,請(qǐng)求圖片肯定403.
又想到onload,呃,是在body完了后才調(diào)用,肯定不行
后來(lái)看到,html的head里的文件先下載完畢后,再請(qǐng)求圖片。這點(diǎn)我以前也提到過(guò),
javascript代碼的執(zhí)行順序
head里主要有2種文件調(diào)用,js和css。
這里就不是什么正規(guī)寫法了,因?yàn)閑mbed頁(yè)面既不是js文件,也不是css文件,但瀏覽器是不會(huì)管這個(gè)的,直接調(diào)用。
一般也不會(huì)這么用……旁門左道
先用了js這種,在src里寫上embed頁(yè)面地址,可以顯示圖片,但有個(gè)javascript錯(cuò)誤。
接著改進(jìn),用css的,會(huì)發(fā)現(xiàn)最終調(diào)用了兩次,一次是在開始,還有一次是在所有其他head文件全下載完之后
有些小影響,但問題不大。
時(shí)間比較晚,就懶得加上試驗(yàn)代碼,OK,就這樣,完工。
1.
http://www.jsforest.org/2010/07/29/js-this指向的小測(cè)試/
這個(gè)說(shuō)是在考this的指向,實(shí)際上是在考變量的作用域。
先說(shuō)其中第二題。o是一個(gè)對(duì)象,doIt是它的方法,那么doIt的this自然指向o
第二題結(jié)果為10無(wú)懸念。
再來(lái)看第一題,在doIt的內(nèi)部加入了一個(gè)setTimeout方法,setTimeout又調(diào)用了一個(gè)匿名方法。
在javascript中,函數(shù)(或方法)也是對(duì)象,那么匿名方法中的this應(yīng)該指向doIt,結(jié)果為20.
實(shí)際上將代碼跑了下,第一題結(jié)果為5.哪里錯(cuò)了?
問題出在setTimeout。
window.setTimeout(code, delay)
When
code is executed, it is executed in the context of the Window object. If
code is a function, the Window object is the value of the
this keyword. If
code is a string, it is evaluated in the global scope with the Window object as the only object on the scope chain. This is true even if the call to
setTimeout( ) occurred within a function with a longer scope chain.
這段話說(shuō)明了setTimeout不管在哪里執(zhí)行,其作用域都是在Window下,this一直指向Window。
第一題的x=5是全局變量,Window作用域下的。
這題說(shuō)是在考this的指向,原來(lái)最終考的是個(gè)setTimeout的問題……被耍了
2.
http://www.css88.com/archives/2429
看到這個(gè)問題,首先注意到的是第一個(gè)用了
===,第二個(gè)沒有,而javascript是個(gè)弱類型語(yǔ)言,使用provisionalTable[item]取值沒判斷類型。
然后,試著找了Object中判斷值是否存在的方法,譬如provisionalTable.item ,in等都沒判斷類型。
想法一,重載[]方法,不過(guò),這個(gè)怎么重載?又不是個(gè)function
想法二,數(shù)字是利用toString()轉(zhuǎn)成字符串的,那么重載Number.prototype.toString=function(){return this;}; 6=='6'返回false了,但provisionalTable[item]取值還是一樣
想法三,provisionalTable同時(shí)存在6和'6'時(shí),provisionalTable[item]能區(qū)分這兩者,那么在provisionalTable中加入一個(gè)設(shè)為true時(shí),將另一個(gè)也加入,并設(shè)為false。但這樣會(huì)有效率問題,事實(shí)上,acsu提出的方法里僅僅加了個(gè)typeof方法,就將效率損失殆盡。
突然想到,這個(gè)問題不是找解決方法,而是找最優(yōu)方法
嗯,作罷,效率問題不是我等小民該考慮的,這個(gè)必須從根本上重構(gòu)javascript才行
不過(guò)思考下,還是能學(xué)到很多東西的
http://code.google.com/p/pubsubhubbub/
pubsubhubbub是google開發(fā)的一種Atom和RSS增強(qiáng)協(xié)議,能夠接近實(shí)時(shí)發(fā)布信息。
也就是說(shuō),如果blogjava支持了pubsubhubbub,我在這里發(fā)布了博客,你就可以在你的閱讀器里很快看到我的文章。
現(xiàn)在只有部分博客服務(wù)商提供了pubsubhubbub功能,譬如WordPress,F(xiàn)riendFeed,livedoor等。
pubsubhubbub的原理很簡(jiǎn)單。它由3部分組成,pub,sub,hub(最后的bub不是的,hubbub是騷動(dòng)的意思)。
pub可以看成是博客,sub是閱讀器,而hub是一個(gè)中轉(zhuǎn)站。通常是由sub向pub請(qǐng)求內(nèi)容,而pubsubhubbub是由sub想hub請(qǐng)求,hub再向pub請(qǐng)求,多一層hub的作用是降低pub的壓力。hub收到pub的更新后,會(huì)向sub發(fā)布最新的內(nèi)容。
因?yàn)椴皇莗ub直接向sub發(fā)布,所以這里說(shuō)的“接近”實(shí)時(shí)發(fā)布信息。
那么如何讓博客支持pubsubhubbub呢?只需要建立一個(gè)hub服務(wù)器,然后在生產(chǎn)rss時(shí)加入
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/>
http://pubsubhubbub.appspot.com就是hub服務(wù)器的地址。
<?xml version="1.0"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/>

</channel>
</rss>
因此判斷博客是否正常pubsubhubbub,也很簡(jiǎn)單,查看
http://www.tkk7.com/liwei/rss的代碼即可,沒有hub的影子。
再看一個(gè)支持的例子
http://rasjacobson.wordpress.com/feed/ ,里面有一句 <atom:link rel='hub' /> ,這個(gè)是支持的。
具體的hub實(shí)現(xiàn)請(qǐng)查看
http://code.google.com/p/pubsubhubbub/wiki/Hubs
我這里只是個(gè)人玩玩而已,沒實(shí)力自己搭hub服務(wù)器。不過(guò)可以借助他人提供的hub服務(wù)器,譬如剛才appspot的。
知道了原理,接下來(lái)就好辦。
因?yàn)橐拇a才能修改生產(chǎn)的RSS,所以blogjava這種博客服務(wù)商不提供pubsubhubbub功能的話,我們這些用戶是無(wú)能為力的。
但自建的獨(dú)立博客是能簡(jiǎn)單支持。等咱啥時(shí)候有閑錢了,再去做吧……
deploy時(shí)會(huì)出現(xiàn)如下信息
WARNING appengine_rpc.py:399 ssl module not found.
Without the ssl module, the identity of the remote host cannot be verified, and
connections may NOT be secure. To fix this, please install the ssl module from
http://pypi.python.org/pypi/ssl .
To learn more, see http://code.google.com/appengine/kb/general.html#rpcssl

當(dāng)打開上面的頁(yè)面時(shí)會(huì)自動(dòng)轉(zhuǎn)到 http://code.google.com/intl/zh-CN/appengine/kb/general.html#rpcssl ,在這里看不到任何幫助,因?yàn)間oogle還沒將這段幫助信息翻譯成中文Orz,可以到 http://code.google.com/intl/en/appengine/kb/general.html#rpcssl 查看。這里說(shuō)明在用python appcfg.py update 命令時(shí)添加 --insecure
后就不會(huì)有問題。但我用GAE Launcher也無(wú)法修改命令。再讓我回到?jīng)]有Launcher,直接用命令行的時(shí)代,還真難適應(yīng)。作罷。
我試著安裝了ssl 模塊,但無(wú)法編譯。網(wǎng)上找到了這個(gè)頁(yè)面,http://canofy.javaeye.com/blog/651968 ,該同學(xué)和我遇到了同樣的問題,并且裝了cygwin。
貌似之后還有其他問題。不談。
今天,我突然發(fā)現(xiàn),deploy時(shí)出現(xiàn)的ssl信息,完全可以忽視,對(duì),可以忽視 ,之后仍會(huì)update成功的。
通常出現(xiàn)上述ssl提示后,console會(huì)沒有任何顯示,此時(shí)不要關(guān)閉console,再次deploy時(shí)會(huì)出現(xiàn)如下信息
Error 409: --- begin server output ---
Another transaction by user xxxxxx is already in progress for this app and major version. That user can undo the transaction with appcfg.py's "rollback" command.
--- end server output ---

這表明之前的update仍在進(jìn)行。請(qǐng)安心等待……
最后,好嘛,一個(gè)不是問題的問題,花了我不少時(shí)間……
這個(gè)不弄明白,代碼出問題了也不難以解決。
《learning Jquery 1.3》p15有一句 JavaScript code is generally run as soon as it is encountered in the browser
也就是說(shuō),瀏覽器遇到一個(gè)語(yǔ)句就立刻解析。貌似這個(gè)問題很快就解決了。
但javascript的寫法相當(dāng)多,譬如網(wǎng)上很多人討論的$(document).ready(和<body onload= 執(zhí)行先后問題
在p16中,提到onload to run after the page is completely loaded.即onload在頁(yè)面完全加載完之后執(zhí)行
ready是firing once the DOM is loaded—without waiting for images 。ready在DOM加載完,圖片未加載時(shí)執(zhí)行。
也即ready在onload之前調(diào)用。
這里就涉及html頁(yè)面的加載順序問題。網(wǎng)上搜到2篇相關(guān)文章。
瀏覽器做了什么?
http://www.cnblogs.com/guilipan/archive/2010/01/06/1640145.html
Javascript在頁(yè)面加載時(shí)的執(zhí)行順序
http://dancewithnet.com/2007/03/22/order-of-execution-of-javascript-on-web/
看完之后,比之前明白了些,但具體的關(guān)系還是沒能理解。
一個(gè)html頁(yè)面包括head和body兩個(gè)部分,head部會(huì)調(diào)用外部CSS和JS文件,body部會(huì)調(diào)用圖片,音視頻等內(nèi)容。
下載順序是html ->CSS JS ->圖片等。
解析順序是html(內(nèi)部是按序執(zhí)行head->body)->DOM生成 ->ready執(zhí)行 ->圖片下載 ->body.onload
將以上兩者結(jié)合,html ->head(CSS JS) ->body->DOM生成 ->ready執(zhí)行 ->圖片下載 ->body.onload
其中head和body部都可能包含js,按代碼順序執(zhí)行。
這里就有一個(gè)疑問,瀏覽器會(huì)等待JS等文件下載完后,并順序執(zhí)行該JS后再繼續(xù)執(zhí)行之后的html代碼么?
按想應(yīng)該不會(huì),不然JS文件過(guò)大,會(huì)影響html頁(yè)面渲染的速度,兩者應(yīng)該是異步的。
但這個(gè)異步就會(huì)將之前總結(jié)的順序攪亂。譬如onload都執(zhí)行完了,包含ready的JS還沒下完,此時(shí)會(huì)發(fā)生什么?
這里說(shuō)得有問題,JS未下載完,onload是不會(huì)執(zhí)行的。
有待繼續(xù)總結(jié)……
[zz]30歲軟件工程師的迷茫和悲哀
http://bbs2.ustc.edu.cn/cgi/bbstcon?board=Job&file=M.1267231721.A
文章很長(zhǎng),就不轉(zhuǎn)載了。
其中有一段
---------------------------------------------------------
35歲左右還在從事軟硬件開發(fā)工作的仍有一大堆,分析這些仍然從事開發(fā)的朋友,
基本上都有以下特點(diǎn):
1癡迷工作或者癡迷電腦,晚上八點(diǎn)到十二點(diǎn)的這段時(shí)間,基本上是在電腦桌或工作臺(tái)前
渡過(guò)的。
2不喜歡與人交住,朋友很少,常聯(lián)系的人不超過(guò)五個(gè)。
3與朋友交往時(shí)談工作多,但一般不主動(dòng)談錢。
4體型偏胖或偏廋,不在正常區(qū)間。
5無(wú)未來(lái)計(jì)劃,對(duì)五年后自已生活怎么樣、從事什么工作說(shuō)不清楚。
6儉省,從不亂花錢。
---------------------------------------------------------
和我很相似……嗯,我也確實(shí)想繼續(xù)做開發(fā),但人要生活,不可能一輩子這樣
迷茫和悲哀吧
試用了下heroku,結(jié)果安裝時(shí)就出問題了
windows環(huán)境,按照
http://docs.heroku.com/windows 裝了
msysgit和
1.8.6 one click ruby installer
D:\Ruby>gem install heroku
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
timed out (http://gems.rubyforge.org/gems/json_pure-1.2.0.gem)
大概是網(wǎng)絡(luò)不行,于是下載后本地安裝
D:\Ruby>gem install "C:\Documents and Settings\wli\My Documents\Downloa
ds\heroku-1.8.0.gem"
ERROR: While executing gem ... (URI::InvalidURIError)
bad URI(is not URI?): C:/Documents and Settings/wli/My Documents/Do
wnloads/heroku-1.8.0.gem
不行
D:\Ruby>gem install C:\Documents and Settings\wli\My Documents\Download
s\heroku-1.8.0.gem
ERROR: could not find gem C:\Documents locally or in a repository
ERROR: could not find gem and locally or in a repository
ERROR: While executing gem ... (RegexpError)
Invalid escape character syntax: /\ASettings\wli\My\Z/
還是不行,猜測(cè)是路徑空格的問題
D:\Ruby>gem install E:/json_pure-1.2.0.gem
Successfully installed json_pure-1.2.0
1 gem installed
Installing ri documentation for json_pure-1.2.0...
Installing RDoc documentation for json_pure-1.2.0...
OK,成功
如此
D:\Ruby>gem install E:/heroku-1.8.0.gem
Successfully installed heroku-1.8.0
1 gem installed
Installing ri documentation for heroku-1.8.0...
Installing RDoc documentation for heroku-1.8.0...
之前看小眾軟件,發(fā)現(xiàn)一個(gè)游戲 http://www.appinn.com/vitamini-game/ ,看到游戲作者過(guò)來(lái)留言,還特意用google翻譯成中文,說(shuō)只要在twitter上follow他就可以拿游戲完整版。
我就試了下。當(dāng)時(shí)是1月21日,很久沒看到回信,就忘了,今天突然看到他的回信,說(shuō)他女友在他們結(jié)婚前給了他一周時(shí)間,就像電影《The Boat that Rocked》。原文 My girl left me a week before our wedding :-) Just like in the "The Boat that Rocked" film. 這是他在解釋為何這么晚才回信。不過(guò)這句話我有些不明白的是,這一周是指哪一周?他是否已結(jié)婚了?
好吧,先不管這些,他公布了游戲完全版的地址,并說(shuō)游戲很快就會(huì)免費(fèi),以下地址可隨意使用。
http://www.vitaminigame.com/friends/
另外,Google昨天發(fā)布了Google Buzz,可在郵箱和手機(jī)上使用。不過(guò)我的常用郵箱里沒出現(xiàn)(日文界面)。另外2個(gè)郵箱出現(xiàn)了,這兩個(gè)郵箱都選用的英文界面。Google的很多新功能都先出現(xiàn)在英文界面里,于是將日文界面換成英文的,不過(guò)Buzz仍然沒出現(xiàn)。想必很快就會(huì)有人如何調(diào)出Buzz了吧。
如同twitter一樣,Buzz對(duì)我意義也不大,僅是嘗鮮而已……
昨天
SAE第二批邀請(qǐng)碼申請(qǐng)和發(fā)放開始 (
已結(jié)束)
http://blog.sae.sina.com.cn/?p=50
今天申請(qǐng)了數(shù)次,終于得到了邀請(qǐng)碼!
申請(qǐng)地址
http://sae.sina.com.cn/?m=inviterequest
為了更快申請(qǐng)到,有些地方時(shí)必須注意的
1.個(gè)人博客這一欄不是沒有紅星標(biāo)記,不是必須的,但不寫,基本上得不到
申請(qǐng)得早不一定能得到邀請(qǐng)碼。
我昨晚9點(diǎn)多申請(qǐng)過(guò)一次,沒寫blog,今天看到別人今天申請(qǐng)的都收到邀請(qǐng)碼了,就知道希望不大。仔細(xì)看了下,那些人都有自己的網(wǎng)站,開發(fā)過(guò)web。
有Web開發(fā)經(jīng)驗(yàn)者優(yōu)先發(fā)放就是由blog體現(xiàn)出來(lái)的。另外,blog和web沒關(guān)系也可以寫,譬如我的這個(gè)blog就沒幾篇和web有關(guān)的。
雖然我用過(guò)GAE,但相關(guān)內(nèi)容沒寫在blog上,一樣獲得了邀請(qǐng)碼。
我總共申請(qǐng)了4次,主要不同點(diǎn)就在于個(gè)人博客那一欄。
昨晚9點(diǎn)多申請(qǐng)了第一次。沒寫blog,沒收到邀請(qǐng)碼。
第二次沒寫blog,沒收到邀請(qǐng)碼。
第三次blog地址寫錯(cuò),沒收到邀請(qǐng)碼。
今天下午3點(diǎn)多,申請(qǐng)了第四次,寫上blog,6點(diǎn)半左右收到了邀請(qǐng)碼郵件。
2.郵箱申請(qǐng)過(guò)一次后,就沒法再申請(qǐng)了,如果想重新填寫申請(qǐng)內(nèi)容,就得換個(gè)郵箱。
3.邀請(qǐng)碼申請(qǐng)和注冊(cè)時(shí)的內(nèi)容可以不同。
4.必須要有手機(jī),接收短信驗(yàn)證碼。
以上。
祝各位喜歡嘗鮮者能順利申請(qǐng)到邀請(qǐng)碼!
hax01tips
注意:本文之后極有可能設(shè)為私有
題目

hax01
Your mission is the following: Simply enter a URL into the box. The domain of the URL must be or end with 'nasa.gov'. The URL will be fetched right away. The content returned should contain the string: "2200178118" in the first 10 Kbytes of data. 404/403/etc error pages are not accepted. Remember, do not do anything illegal. Make sure you type the right URL, do not guess.

Hint: google is your friend.
http://google.com/search?q=site:nasa.gov


當(dāng)時(shí)我的思路是找出所有以nasa.gov結(jié)尾的域名,然后遍歷這些網(wǎng)址。之后我真的寫了個(gè)python程序,取了google檢索出來(lái)的前1000個(gè)頁(yè)面,取出域名,保存起來(lái),去除重復(fù)的有500多個(gè)。接著,讀取html頁(yè)面,判斷是否還有字符串。其間,遇到了個(gè)網(wǎng)速的問題,超時(shí)后經(jīng)常會(huì)跑到電信的114搜索上去。驗(yàn)證了170多個(gè)頁(yè)面后,我發(fā)現(xiàn)自己理解錯(cuò)題目了,這里的URL并不是指URL以nasa.gov結(jié)尾,而是指URL的域名以nasa.gov結(jié)尾。我無(wú)語(yǔ)了,這相當(dāng)于域名下的所有網(wǎng)頁(yè)都有可能。這個(gè)工作量巨大得幾乎是不可能的。暫時(shí)中止。
以下代碼可供參考,修改了n次,可能現(xiàn)在已經(jīng)沒法直接運(yùn)行。

2.5
1
from urllib import FancyURLopener
2
import urllib2
3
import sys
4
import re
5
import locale
6
"""
7
class MyOpener(FancyURLopener):
8
version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11)Gecko/20071127 Firefox/2.0.0.11'
9
10
res = re.compile(r'(([a-zA-Z]+\.)+nasa.gov)')
11
12
myopener = MyOpener()
13
url = 'http://www.google.co.jp/search?&num=100&as_qdr=all&as_occt=any&as_sitesearch=nasa.gov'
14
li = []
15
for i in range(0, 10):
16
url = url + '&start=' + str(i*100)
17
page = myopener.open(url)
18
str1 = page.read()
19
for aItem in res.findall(str1):
20
if not aItem[0] in li:
21
li.append(aItem[0])
22
"""
23
with open('nasa.txt') as li:
24
#li = open('nasa.txt')
25
#print li.count
26
m = 0
27
for a in li:
28
#print 'http://'+a
29
m = m + 1
30
print m
31
url = a
32
req = urllib2.Request(url)
33
try:
34
response = urllib2.urlopen(req)
35
the_page = response.read()
36
with open(url + '.txt') as nasa:
37
write(the_page)
38
if the_page.find(r'daohang.118114.cn') <> -1 :
39
print '114'
40
elif the_page.find('2200178118', 0, 10240) <> -1 :
41
print url
42
else :
43
print '
'
44
except urllib2.URLError, e:
45
print e.reason
46
47
"""
48
#gUrl = 'http://www.google.co.jp/search?hl=ja&source=hp&q=site%3Anasa.gov&lr=&aq=f&oq='
49
#google = urllib.urlopen(gUrl)
50
#str = google.read()
51
for str in open('sitenasa_gov.htm'):
52
for aItem in res.findall(str):
53
print aItem[0]
54
55
#print str
56
str = 'www.xxx.nasa.gov/wwf.nasa.gov'
57
58
"""
59
60
61
#2200178118
62

3.1
1
from urllib.request import FancyURLopener
2
import urllib
3
import sys
4
import re
5
import locale
6
"""
7
class MyOpener(FancyURLopener):
8
version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11)Gecko/20071127 Firefox/2.0.0.11'
9
10
res = re.compile(r'(([a-zA-Z]+\.)+nasa.gov)')
11
12
myopener = MyOpener()
13
url = 'http://www.google.co.jp/search?&num=100&as_qdr=all&as_occt=any&as_sitesearch=nasa.gov'
14
li = []
15
for i in range(0, 10):
16
url = url + '&start=' + str(i*100)
17
page = myopener.open(url)
18
str1 = page.read()
19
for aItem in res.findall(str1):
20
if not aItem[0] in li:
21
li.append(aItem[0])
22
"""
23
fiPath = sys.argv[1]
24
with open(fiPath) as li:
25
#li = open('nasa.txt')
26
#print li.count
27
m = 0
28
for a in li:
29
#print 'http://'+a
30
m = m + 1
31
#print m
32
url = a
33
req = urllib.request.Request(url)
34
try:
35
response = urllib.request.urlopen(req)
36
the_page = response.read()
37
with open(url[7:-1] + '.txt', 'wb') as nasa:
38
nasa.write(the_page)
39
nasa.flush()
40
if the_page.decode('utf8').find(r'icc.qonc.com') != -1:
41
print('114')
42
elif the_page.decode('utf8').find('2200178118', 0, 10240) != -1:
43
print(url)
44
else :
45
print('
')
46
except urllib.error.URLError as e:
47
print(e.code)
48
except UnicodeDecodeError as UDE:
49
print(UDE)
50
51
"""
52
#gUrl = 'http://www.google.co.jp/search?hl=ja&source=hp&q=site%3Anasa.gov&lr=&aq=f&oq='
53
#google = urllib.urlopen(gUrl)
54
#str = google.read()
55
for str in open('sitenasa_gov.htm'):
56
for aItem in res.findall(str):
57
print aItem[0]
58
59
#print str
60
str = 'www.xxx.nasa.gov/wwf.nasa.gov'
61
62
"""
63
64
65
#2200178118
66
而后,過(guò)了大概幾個(gè)月,變換思路,解決,意外的簡(jiǎn)單……
事實(shí)上,只要向服務(wù)器提交數(shù)據(jù),一般服務(wù)器也會(huì)將該數(shù)據(jù)返回到頁(yè)面上。該題最后的hint不是讓我們來(lái)搜該域名,而是告訴我們?cè)鯓釉趃oogle.com的頁(yè)面上顯示我們想要的數(shù)據(jù)。譬如
http://www.google.co.jp/search?q=2200178118 該頁(yè)面的前10K里應(yīng)該包含了該字符串。接下來(lái),我們只需要在nasa.gov上找個(gè)頁(yè)面提交數(shù)據(jù)就行了。
over
以前曾寫過(guò)PL/SQL,當(dāng)時(shí)還是第一次接觸,什么都不明白
順手寫了篇 《Oracle內(nèi)建包UTL_FILE使用說(shuō)明 》的博文,沒想到還被轉(zhuǎn)載(譬如百度搜索utl_file,第一篇就是,不過(guò)沒寫我的出處,可惜……)
http://www.tkk7.com/liwei/archive/2007/01/10/92902.html
當(dāng)時(shí)項(xiàng)目做完就沒接觸PL/SQL了,時(shí)隔2年半,又要寫PL/SQL了,而且遇到的問題居然還是和UTL_FILE有關(guān)。
于是上網(wǎng)找了些資料
http://www.shift-the-oracle.com/plsql/utl_file/utl_file_dir.html
http://www.shift-the-oracle.com/plsql/utl_file/create-directory.html
日文的,不得不說(shuō),日本人做事實(shí)在是認(rèn)真,資料非常詳細(xì),看完之后,我就覺得我是高手了,可以整理點(diǎn)東西出來(lái)教別人了……哈哈
廢話少說(shuō),開始
現(xiàn)在一般跑UTL_FILE.FOPEN時(shí)會(huì)出現(xiàn)ORA-29280的錯(cuò)誤,出現(xiàn)這個(gè)錯(cuò)誤主要有2個(gè)原因
1.文件夾沒有讀寫權(quán)限
2.文件夾沒有進(jìn)行Oracle讀寫配置
注意:這里討論的Oracle是在Unix類(包括linux,Solaris等)主機(jī)下安裝的。
對(duì)于第1個(gè)原因,直接設(shè)定文件夾權(quán)限即可,譬如
# chmod 700 /u05/file_storage/recv_dir
這個(gè)沒啥好說(shuō),不是我要說(shuō)的重點(diǎn)。
第2個(gè)原因,可以好好說(shuō)說(shuō)。
Oracle進(jìn)行文件夾讀寫配置有2種方式
1.設(shè)定UTL_FILE_DIR
2.使用DIRECTORY 對(duì)象
1.設(shè)定UTL_FILE_DIR
Oracle 8i之前,貌似沒有DIRECTORY這個(gè)概念,所以只有一種方式。
編輯 initORACLE_SID.ora 文件(ORACLE_SID是個(gè)變數(shù),因DB設(shè)定有所不同),添加
UTL_FILE_DIR='/u05/file_storage/recv_dir','/u05/file_storage/send_dir'
即可。
Oracle 9i之后還可以利用ALTER SYSTEM 命令進(jìn)行設(shè)定
ALTER SYSTEM SET
UTL_FILE_DIR='/u05/file_storage/recv_dir','/u05/file_storage/send_dir'
SCOPE = SPFILE ;
也可以用命令來(lái)確認(rèn)設(shè)定是否正確
SELECT NAME, VALUE FROM V$PARAMETER2 WHERE NAME='utl_file_dir' ;
注意:Oracle 8i 之后的DB不推薦使用這種方式,主要是情報(bào)泄露方面,日本很在意這個(gè)。
另外,讓所有文件夾有效可使用('*')。
這種方法不方便的就是,設(shè)定了之后必須重啟Oracle才能使設(shè)定有效。
使用例
CREATE OR REPLACE PROCEDURE RIVUS.UTL_FILE_DIR_WRITE_SAMPLE
AS
vHandle UTL_FILE.FILE_TYPE;
vDirname VARCHAR2(250);
vFilename VARCHAR2(250);
vOutput VARCHAR2(32767);
BEGIN
vDirname := '/u05/file_storage/send_dir'; -- 絕對(duì)路徑
vFilename := 'test.txt';
vHandle := UTL_FILE.FOPEN(vDirname ,vFilename,'w', 32767);
vOutput := '利用 UTL_FILE_DIR 進(jìn)行的文件處理';
UTL_FILE.PUT_LINE(vHandle, vOutput);
UTL_FILE.FCLOSE(vHandle);
EXCEPTION WHEN OTHERS THEN
UTL_FILE.FCLOSE_ALL;
RAISE;
END;
2.使用DIRECTORY 對(duì)象
從Oracle 9i 開始UTL_FILE就能使用CREATE DIRECTORY了。
首先文件夾必須存在,要有權(quán)限,我就不多說(shuō)了。
然后做成DIRECTORY 對(duì)象
CREATE DIRECTORY recv_area AS '/u05/file_storage/recv_dir';
CREATE DIRECTORY send_area AS '/u05/file_storage/send_dir';
當(dāng)recv_area已存在時(shí),會(huì)出錯(cuò),可使用下面這句
CREATE OR REPLACE DIRECTORY recv_area AS '/u05/file_storage/recv_dir';
接著,賦予用戶該DIRECTORY 對(duì)象的讀寫權(quán)限
GRANT READ ON DIRECTORY recv_area TO user_name ;
GRANT WRITE ON DIRECTORY send_area TO user_name ;
同時(shí)讀寫權(quán)限
GRANT READ,WRITE ON DIRECTORY recv_area TO user_name ;
做好這些就可以確認(rèn)了
SELECT * FROM ALL_DIRECTORIES ;
看到自己做成的DIRECTORY了吧
這里需要注意的是,當(dāng)初CREATE DIRECTORY的時(shí)候是小寫recv_area,現(xiàn)在這里是大寫RECV_AREA
之后利用該DIRECTORY 對(duì)象時(shí)必須用大寫。
還有,該DIRECTORY對(duì)象不包括上層目錄(這個(gè)是當(dāng)然的),也不包括子目錄。
要利用子目錄需要再定義一個(gè)子目錄的DIRECTORY對(duì)象。
使用例
CREATE OR REPLACE PROCEDURE RIVUS.CREATE_DIR_WRITE_SAMPLE
AS
vHandle UTL_FILE.FILE_TYPE;
vDirname VARCHAR2(250);
vFilename VARCHAR2(250);
vOutput VARCHAR2(32767);
BEGIN
vDirname := 'SEND_AREA'; -- 必須用大寫
vFilename := 'test.txt';
vHandle := UTL_FILE.FOPEN(vDirname ,vFilename,'w', 32767);
vOutput := '利用CREATE DIRECTORY進(jìn)行的文件處理';
UTL_FILE.PUT_LINE(vHandle, vOutput);
UTL_FILE.FCLOSE(vHandle);
EXCEPTION WHEN OTHERS THEN
UTL_FILE.FCLOSE_ALL;
RAISE;
END;
到此為止,問題應(yīng)該解決了。
貌似現(xiàn)在流行這個(gè),很多人都已經(jīng)有了吧
還沒有的留下郵箱,最好是Gmail
相信很快wave就像白菜一樣爛大街了
最近訂閱了博客園的新聞?lì)l道,少有的RSS全文,看的相當(dāng)爽快.
于是也想找下其他網(wǎng)站的全文RSS,搜索時(shí)發(fā)現(xiàn)可以自制,于是自己嘗試了一下.
參考的文章是 http://jandan.net/2008/11/15/yahoo-pipes.html
制作步驟就省了,以下是結(jié)果.
可以顯示全文,但仍有不足,cnBeta的圖片都無(wú)法查看.不知有何方法解決.
暫且先這樣了.
有興趣的可以到下列地址查看
http://pipes.yahoo.com/pipes/pipe.info?_id=d370ce22946e9fafbbc5170695871cad
RSS地址如下
http://pipes.yahoo.com/pipes/pipe.run?_id=d370ce22946e9fafbbc5170695871cad&_render=rss
真見鬼,本來(lái)寫了不少內(nèi)容的,結(jié)果,頁(yè)面掛了,寫的全沒了
懶得去寫第二次了。簡(jiǎn)略之。
http://www.bylur.net/free/
http://www.red-pill.eu/freeunix.shtml
我申請(qǐng)成功的如下
http://freeshell.org
http://ninthfloor.org
http://mrejata.eu/
http://hax.tor.hu/
提供的服務(wù)條件依次增加。
不過(guò)加上申請(qǐng)條件來(lái)評(píng)價(jià)的話,第三個(gè)最方便……
問題 參照此貼
http://bbs.pcbeta.com/thread-352911-1-1.html
本來(lái)有個(gè)exe文件,選右鍵想用winrar打開看看自解壓來(lái),結(jié)果一不小心選中始終用winrar打開這類文件了,結(jié)果所有exe文件都打不開了
其中cmd.exe,regedit.exe也不可用,但command.com可用,assoc,ftype等命令也可用
Vista 中
C:\WINDOWS>assoc .exe
.exe=exefile
C:\WINDOWS>ftype exefile="%1" %*
exefile="%1" %*
均正常
HKEY_CLASSES_ROOT\exefile\shell\open\command
默認(rèn)值也為"%1" %*
具體現(xiàn)象是只有exe文件打不開,其余類型的文件如txt仍然可以執(zhí)行exe,譬如雙擊txt文件后會(huì)啟動(dòng)emeditor.exe。
那么說(shuō),Vista下exe的文件關(guān)聯(lián)信息保存在其他地方。
打開RegWorkShop.exe(至于用什么方法,大家可以猜猜,提示,上面提到可以用某種方法啟動(dòng)exe),搜索winrar.exe
出現(xiàn)了一些結(jié)果,其中有兩個(gè)比較可疑
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.exe\OpenWithList, a, WinRAR.exe
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.exe\UserChoice, Progid, Applications\WinRAR.exe
查看其它正常機(jī)器后發(fā)現(xiàn),OpenWithList下只有一個(gè)默認(rèn)值,UserChoice整個(gè)分支都不存在,也就是說(shuō)這些都可以刪掉。
OpenWithList下的兩個(gè)值刪除后,UserChoice卻無(wú)法刪除,訪問被拒絕了。
嘗試了一些方法,最后,好在RegWorkShop夠強(qiáng)悍,Edit下有個(gè)permissions,可以設(shè)置權(quán)限,將當(dāng)前用戶設(shè)為全部允許后,成功刪除了UserChoice。
之后,雙擊exe可直接運(yùn)行了。不過(guò)很多exe的圖標(biāo)仍然為winrar的壓縮包圖標(biāo),大概下次重啟后會(huì)恢復(fù)吧,先不管,上網(wǎng)去了……
很久以前在
http://www.pdfchm.net/ 注冊(cè)過(guò)一個(gè)帳號(hào),很久沒用了,想想放著也可惜,48小時(shí)可以下2本書的條件都被我放過(guò)了
于是想為需要英文電子書的各位服務(wù)下,需要哪本書,放上pdfchm的鏈接,我看到后,去下載放到國(guó)內(nèi)的一些網(wǎng)盤給大家分享。
注意:
1.如果你要找的書,網(wǎng)上到處都找得到,那還是請(qǐng)去其他地方下載吧。我的回應(yīng)速度非常慢的,可能我還沒放出下載,你就已經(jīng)找到了
2.我不保證會(huì)滿足各位提的每個(gè)要求,但你確實(shí)需要的話,告訴我,總會(huì)多一份希望。來(lái)得晚總比沒有強(qiáng)
3.因?yàn)槲以趐dfchm的帳號(hào)是非付費(fèi)帳號(hào)(我窮呀),48小時(shí)只能下2本,所以對(duì)各位的要求,反應(yīng)會(huì)非常慢(當(dāng)然,最主要的我太懶了),請(qǐng)各位耐心等待。不想等也就算了,不要人身攻擊,我也是有脾氣的……
4.請(qǐng)一定要給出pdfchm的鏈接,不然我會(huì)假裝沒看到的
5.想到再加
以上
更新
comet-and-reverse-ajax-the-next-generation-ajax-2-0-firstpress.9781590599983.44964.pdf
http://www.damipan.com/file/1dCCDSA.html
lucene-in-action-in-action-series.9781932394283.26350.pdf
http://www.damipan.com/file/1dCRT2F.html
professional-javascript-for-web-developers-wrox-programmer-to-programmer.9780470227800.45676.pdf
http://www.damipan.com/file/1dD0neX.html
最近收到的一些
騙人短信,很好奇網(wǎng)上是否有這些騙子的信息,上網(wǎng)搜索,沒啥有用信息
那么,我就先寫出來(lái),讓別人來(lái)搜吧……
款還沒匯吧,那張卡的磁條壞了,請(qǐng)把款就匯到這新卡上;農(nóng)業(yè)銀行XXXX XXX
手機(jī)號(hào) |
手機(jī)號(hào)所在地 |
銀行賬戶 |
戶主 |
銀行 |
15321916024 |
北京 |
6228481770527140914 |
黃麗梅 |
農(nóng)業(yè)銀行 |
15321937629 |
北京 |
622848170528950113 |
趙雅君 |
農(nóng)業(yè)銀行 |
還有一條大概是合肥本地的騙人短信,合肥電話區(qū)號(hào)是0551
建行通知:您的信用卡與06月05日在百盛廣場(chǎng)購(gòu)物9586元,請(qǐng)到網(wǎng)點(diǎn)繳費(fèi)逾期將從您的其他賬上扣除,如有疑問請(qǐng)與本行聯(lián)系:2362185
我沒辦過(guò)信用卡,不知用信用卡消費(fèi)后是否會(huì)有短信通知。要是辦了,那可得小心呀……
[DCC 致命的エラー] xxxx.pas(26): F2051 ユニット pngimage は異なるバージョンの Graphics.TGraphic.Equals によりコンパイルされています
英文的舉例(網(wǎng)上搜的)
[DCC Error] XXXX.pas(7): F2051 Unit IdThread was compiled with a different version of Classes.TThread.Synchronize
問題主要在pngimage,搜索時(shí)發(fā)現(xiàn) 其路徑在D:\Program Files\CodeGear\RAD Studio\6.0\source\Win32\vcl\Imaging\PNGImage\pngimage.pas
而我在Tools/Options,Environment Options/Delphi Options/Library - Win32的Library Path里加了個(gè) d:\program files\codegear\rad studio\6.0\source\win32\vcl 路徑
去掉這個(gè)路徑后,就沒有F2051問題了
另外,我這里遇到的是系統(tǒng)提供的unit,如果是自己寫的unit出了問題,或許該在搜索路徑里找錯(cuò)了。
參考
http://hi.baidu.com/liaoxuewei2008/blog/item/6928cf8282cffebc6d8119f5.html
http://topic.csdn.net/u/20080222/23/84f94b77-0c47-4cd1-b9fd-3aafdb9d7446.html
http://blog.sina.com.cn/s/blog_53912cf101000a5x.html
20091017更新
http://www.jsharer.com/blog/301655.htm
20091007更新
公共法語(yǔ)上冊(cè).pdf
https://www.damipan.com/file/1bvLJlH.html
公共法語(yǔ)下冊(cè).pdf
https://www.damipan.com/file/1bvOszS.html
公共法語(yǔ)練習(xí)參考答案.pdf
https://www.damipan.com/file/1bvWN00.html
MP3
https://www.damipan.com/file/4791Vq7.html
https://www.damipan.com/file/45xbSLk.html
以下失效
進(jìn)入 http://pickup.mofile.com/ 填寫提取碼
或者點(diǎn)擊下面的鏈接
若無(wú)法下載,請(qǐng)使用flashget等工具,或者換個(gè)時(shí)間下載,mofile就有這毛病。不過(guò)文件是存在的
20090607 add
MP3下載
PublicFrenchMp3.rar
PublicFrench2.rar