青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

2010年8月7日

轉一篇說明的比較不錯的:

句柄是WONDOWS用來標識被應用程序所建立或使用的對象的唯一整數,WINDOWS使用各種各樣的句柄標識諸如應用程序實例,窗口,控制,位圖,GDI對象等等。WINDOWS句柄有點象C語言中的文件句柄。


從 上面的定義中的我們可以看到,句柄是一個標識符,是拿來標識對象或者項目的,它就象我們的姓名一樣,每個人都會有一個,不同的人的姓名不一樣,但是,也可 能有一個名字和你一樣的人。從數據類型上來看它只是一個16位的無符號整數。應用程序幾乎總是通過調用一個WINDOWS函數來獲得一個句柄,之后其他的 WINDOWS函數就可以使用該句柄,以引用相應的對象。


如果想更透徹一點地認識句柄,我可以告訴大家,句柄是 一種指向指針的指針。我們知道,所謂指針是一種內存地址。應用程序啟動后,組成這個程序的各對象是住留在內存的。如果簡單地理解,似乎我們只要獲知這個內 存的首地址,那么就可以隨時用這個地址訪問對象。但是,如果您真的這樣認為,那么您就大錯特錯了。我們知道,Windows是一個以虛擬內存為基礎的操作 系統(tǒng)。在這種系統(tǒng)環(huán)境下,Windows內存管理器經常在內存中來回移動對象,依此來滿足各種應用程序的內存需要。對象被移動意味著它的地址變化了。如果 地址總是如此變化,我們該到哪里去找該對象呢?


為了解決這個問題,Windows操作系統(tǒng)為各應用程序騰出一些內存儲地址,用來 專門登記各應用對象在內存中的地址變化,而這個地址(存儲單元的位置)本身是不變的。Windows內存管理器在移動對象在內存中的位置后,把對象新的地 址告知這個句柄地址來保存。這樣我們只需記住這個句柄地址就可以間接地知道對象具體在內存中的哪個位置。這個地址是在對象裝載(Load)時由系統(tǒng)分配給 的,當系統(tǒng)卸載時(Unload)又釋放給系統(tǒng)。



句柄地址(穩(wěn)定)→記載著對象在內存中的地址────→對象在內存中的地址(不穩(wěn)定)→實際對象



本質:WINDOWS程序中并不是用物理地址來標識一個內存塊,文件,任務或動態(tài)裝入模塊的,相反的,WINDOWS API給這些項目分配確定的句柄,并將句柄返回給應用程序,然后通過句柄來進行操作。



但 是必須注意的是程序每次從新啟動,系統(tǒng)不能保證分配給這個程序的句柄還是原來的那個句柄,而且絕大多數情況的確不一樣的。假如我們把進入電影院看電影看成 是一個應用程序的啟動運行,那么系統(tǒng)給應用程序分配的句柄總是不一樣,這和每次電影院售給我們的門票總是不同的一個座位是一樣的道理。

受M$的幫助文檔以及很多Windows編程書籍的影響,大家對局柄比較普遍的認識是:句柄是一個整數,用以標識Windows對象,句柄不是一個指針……


而實際上,這些不過是M$進行數據封裝的幌子而已,下面我們一起來分析一下HANDLE到底是什么。


請先到Windef.h找絕大多數句柄的定義:

DECLARE_HANDLE(HWND);

DECLARE_HANDLE(HHOOK);

……

DECLARE_HANDLE(HGDIOBJ);

DECLARE_HANDLE(HBITMAP);

DECLARE_HANDLE(HBRUSH);

……

typedef HANDLE HGLOBAL;

typedef HANDLE HLOCAL;

……


OK, 現(xiàn)在大家跟我一起翻到Winnt.h,看看DECLARE_HANDLE和HANDLE到底是什么:

#ifdef STRICT

typedef void *HANDLE;

#define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name

#else

typedef PVOID HANDLE;

#define DECLARE_HANDLE(name) typedef HANDLE name

#endif

typedef HANDLE *PHANDLE;


哈哈,現(xiàn)在知道了吧,HANDLE就是PVOID,也就是無類型指針,

而DECLARE_HANDLE(HWND);就是:

struct HWND__ {

  int unused;};

typedef struct HWND__ *HWND;

現(xiàn)在實際上都清楚啦,這些Handles都不過是指向struct的指針,至于這個struct的用處,連M$都說unused了,^o^


現(xiàn)在解釋下M$這么做的意義,這就是所謂數據封裝,你可以在你的程序中把M$的內部結構指針傳來傳去,可是你卻不知道它到底指向的內容是什么,而且可以編個句柄的瞎話防止大家的質疑:)。而M$的程序大可以這么寫:

#include <windows.h> //這個和大家用的一樣

#include "windows_in.h" //這個是M$自用的,外人別想看到^o^


HSOMETHINGELSE DoSomething(HSOMETHING hSomething) {

  struct RealSomething* p = (struct RealSomething*)hSomething; //先強制類型轉換成內部結構指針

  ……do something……

  return (HSOMETHINGELSE)pRealSomethingElse;//強制類型逆轉換
posted @ 2010-08-07 10:13 欣萌 閱讀(499) | 評論 (0)編輯 收藏

2010年8月6日

我準備了三天。  然后得到百度的實習生offer  可惜時間不合適。

我真的很想去那里工作,讓自己更加的進步。。

追求   熱情   技術 我都不愿意放棄

posted @ 2010-08-06 09:31 欣萌 閱讀(125) | 評論 (0)編輯 收藏

2010年7月21日

又下雨了

不能去游泳了。。。。。。


現(xiàn)在又沒有下雨了。。。


細細
posted @ 2010-07-21 14:42 欣萌 閱讀(241) | 評論 (0)編輯 收藏

2010年7月16日

之前寫的不算。

現(xiàn)在要做的是 智能監(jiān)控下的普通監(jiān)控平臺

把從采集卡采集到的數據 壓縮, 打包多路發(fā)送,同時給智能監(jiān)控留接口。智能監(jiān)控為給我報警區(qū)域和報警信號。 然后打包發(fā)送。

接收端顯示。


這不是我的本意 但是導師讓我做。
posted @ 2010-07-16 15:03 欣萌 閱讀(412) | 評論 (4)編輯 收藏

2010年7月14日

4路攝像頭USB的

一個視頻轉發(fā)服務器 兼?zhèn)?流媒體服務器

N個監(jiān)控端

N個瀏覽器端

攝像頭 采集---> 壓縮(h264)--->TCP--->視頻轉發(fā)服務器--->組合4路碼流--->RTP--->監(jiān)控端--->解碼--->顯示

視頻轉發(fā)服務器需要保存264數據,控制監(jiān)控端的訪問權。保存的數據 放入流媒體服務器(Live555),供IE查看(安裝VLC的插件)。 可能需要轉碼。

用到的庫

jrtp  live555 vcl ffmpeg sdl

posted @ 2010-07-14 16:15 欣萌 閱讀(324) | 評論 (0)編輯 收藏

2010年7月12日

好好準備

打好基礎

奮斗 奮斗

posted @ 2010-07-12 11:58 欣萌 閱讀(254) | 評論 (0)編輯 收藏

2010年7月7日


學習中 每2個月遇到大瓶頸一次

半個月小瓶頸一次


遇到瓶頸 解決的時間在拉長。


Code  看書 看博客 逛論壇 Code


posted @ 2010-07-07 17:17 欣萌 閱讀(257) | 評論 (1)編輯 收藏

2010年7月2日

在復習Primer的時候看到的。


void RetrieveEmailFromPage(const string& page, const string& url)
{
    int posCur = 0, posStart, posAt, posEnd, posTmp;
    string email;
    string tags = "._-" "abcdefg" "hijklmn" "opqrst" "uvwxyz"
        "ABCDEFG" "HIJKLMN" "OPQRST" "UVWXYZ" "0123456789";

    while (true) {
        if ((posAt = page.find('@', posCur)) != string::npos) {
            posStart = page.find_last_not_of(tags, posAt - 1) + 1;
            posEnd = page.find_first_not_of(tags, posAt + 1);
            posTmp = page.find('.', posAt + 1);
// domain has at least one dot "xxx.yy"

            if (posTmp != string::npos && posTmp < posEnd - 1 && posStart != posAt && posEnd != posAt + 1) {
                email = page.substr(posStart, posEnd - posStart);
                AddEmail(email, url); // add the email to special data struct
            }
            posCur = posEnd;
        } else {
            return;
        }
    }
//while
}


posted @ 2010-07-02 10:42 欣萌 閱讀(273) | 評論 (0)編輯 收藏
 
因為導師的臨時反悔,我不能去實習了。

很對不起實習公司。覺得自己浪費的別人的時間。經過這么多面試,好不容易的機會,本來想去好好學習,順便解決畢業(yè)論文的問題。沒想到,導師會出爾反爾。 唉。

GoogleDOC好像也不能新建文檔了。

以后這里就成了我 摘抄小程序,寫體會的地方了。



posted @ 2010-07-02 10:39 欣萌 閱讀(283) | 評論 (2)編輯 收藏
僅列出標題  
 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品黄视频| 亚洲国产精品123| 精品白丝av| 国产日韩在线看| 欧美体内she精视频在线观看| 欧美一区二区三区精品| 欧美一级久久久久久久大片| 欧美在线视频一区| 免费视频亚洲| 欧美日韩亚洲一区二区| 国产精品一区二区在线| 精品动漫3d一区二区三区免费版| 在线看一区二区| 制服诱惑一区二区| 久久成人综合视频| 欧美激情精品久久久久久黑人| 亚洲精品国产精品久久清纯直播 | 国产亚洲成av人在线观看导航| 国产一区二区看久久| 亚洲激情在线视频| 午夜久久99| 欧美国产日韩精品| 艳妇臀荡乳欲伦亚洲一区| 99riav久久精品riav| 午夜在线电影亚洲一区| 欧美高清视频一区二区三区在线观看 | 午夜亚洲伦理| 欧美黄污视频| 国内久久精品视频| 亚洲一区二区三区在线| 免费在线观看精品| 亚洲综合色激情五月| 欧美精选午夜久久久乱码6080| 国产日韩av一区二区| 99精品欧美一区二区蜜桃免费| 久久九九电影| 亚洲愉拍自拍另类高清精品| 欧美激情第六页| 在线观看欧美日本| 久久国产夜色精品鲁鲁99| 亚洲国产精品久久久久婷婷老年| 欧美一级久久久久久久大片| 国产精品国产精品| 亚洲视频欧洲视频| 亚洲激情欧美激情| 欧美wwwwww| 91久久精品一区二区三区| 老司机午夜精品| 久久精品免费观看| 国产日韩精品在线| 欧美在线一二三| 香蕉亚洲视频| 国产日韩欧美亚洲一区| 欧美一级专区免费大片| 亚洲欧美激情诱惑| 日韩午夜三级在线| 亚洲狠狠丁香婷婷综合久久久| 久久精品五月| 韩国成人福利片在线播放| 性做久久久久久免费观看欧美| 日韩视频一区二区三区| 欧美日韩欧美一区二区| 中文精品视频| 亚洲午夜精品| 国产视频在线观看一区二区三区| 欧美一区二区女人| 欧美资源在线观看| 悠悠资源网久久精品| 欧美二区在线| 欧美日韩国产精品专区| 亚洲欧美日韩天堂一区二区| 亚洲欧美日韩国产中文| 国产视频一区三区| 欧美.www| 欧美日韩成人网| 欧美有码在线观看视频| 久久久久国色av免费观看性色| 狠色狠色综合久久| 最新国产乱人伦偷精品免费网站| 欧美日韩另类视频| 性欧美videos另类喷潮| 久久久久国内| 一区二区激情| 欧美在线观看一区| 亚洲美女啪啪| 欧美一区二区精品| 日韩视频在线观看一区二区| 亚洲视频福利| 亚洲国产精品一区二区www在线| 亚洲精品视频啊美女在线直播| 国产精品女人网站| 欧美电影美腿模特1979在线看 | 亚洲无线观看| 亚洲第一毛片| 亚洲一区二区三区精品视频| 亚洲高清免费在线| 亚洲欧美日韩另类| 日韩一级精品| 久久精品亚洲精品| 亚洲免费在线观看视频| 蜜臀av一级做a爰片久久| 欧美一区=区| 欧美日韩一区综合| 欧美顶级艳妇交换群宴| 国产精品三级视频| 最新中文字幕一区二区三区| 国产一区二区三区最好精华液| 亚洲激情黄色| 一区在线影院| 亚洲男人影院| 亚洲一区免费观看| 欧美激情亚洲视频| 欧美国产精品va在线观看| 国产日韩欧美日韩| 亚洲无线观看| 亚洲一二三四久久| 在线亚洲自拍| 欧美日韩国产美| 欧美激情亚洲另类| 韩日午夜在线资源一区二区| 亚洲一区欧美二区| 亚洲摸下面视频| 欧美视频一区二区| 日韩一级成人av| 日韩一区二区精品视频| 欧美大秀在线观看| 欧美激情按摩在线| 亚洲精品一区二区在线| 久久人人97超碰人人澡爱香蕉| 久久九九久精品国产免费直播| 国产精品自在欧美一区| 亚洲一区二区免费看| 亚洲欧美精品suv| 欧美三级午夜理伦三级中视频| 亚洲精品系列| 国产精品99久久久久久www| 欧美日韩国产限制| 一区二区三区日韩精品视频| 亚洲影视在线| 国产情侣久久| 久久精品国产v日韩v亚洲| 麻豆国产精品va在线观看不卡| 黄色日韩在线| 欧美成人精品一区| 99re视频这里只有精品| 夜夜嗨一区二区| 国产精品久久久久久久电影| 亚洲一区二区三区三| 久久久91精品国产| 亚洲国产精品99久久久久久久久| 蘑菇福利视频一区播放| 亚洲乱码一区二区| 午夜国产精品视频免费体验区| 国产免费成人在线视频| 久久免费精品视频| 亚洲另类视频| 久久国产精品久久久久久久久久| 一区二区三区在线视频免费观看 | 欧美精品性视频| 在线视频欧美日韩精品| 欧美在线免费一级片| 影音先锋久久资源网| 欧美激情免费观看| 亚洲欧美日韩一区| 亚洲成色www久久网站| 亚洲视频一区二区| 国产亚洲一区二区三区| 欧美成人免费全部观看天天性色| 一本大道久久精品懂色aⅴ| 久久久久国产精品麻豆ai换脸| 亚洲精品一线二线三线无人区| 国产精品视频一| 乱人伦精品视频在线观看| 99精品国产热久久91蜜凸| 久久久综合激的五月天| 亚洲婷婷综合久久一本伊一区| 激情亚洲网站| 国产精品普通话对白| 欧美成年人视频| 欧美亚洲视频| 亚洲乱码久久| 欧美电影免费网站| 久久精品五月婷婷| 女人香蕉久久**毛片精品| 亚洲成色www久久网站| 国产精品乱码一区二三区小蝌蚪 | 影院欧美亚洲| 国产精品mv在线观看| 欧美不卡视频| 欧美自拍丝袜亚洲| 亚洲欧美日韩另类| 在线视频精品一区| 亚洲大片在线观看| 久久婷婷综合激情| 久久av在线| 欧美一区二区免费| 亚洲欧美日韩天堂一区二区| 一本综合久久| 日韩视频一区| 亚洲乱码国产乱码精品精98午夜|