被人嘲笑,随便说说

在编程的这条路上不时地产生迷茫,到底这条路走下去该去哪呀,这几天有空研究了一下C++的thunk机制,却被同时嘲笑浪费时间,郁闷。
下面是在下这几天自己写的非常简单的线程类,希望大家批评指教,如果真没用,那我就去学别的了
/*********************************/
/*** file:CThread.h ***/
/*********************************/
#include

#pragma pack(push, 1)
struct StdThunkContext
{
BYTE m_mov; // mov eax, %pThis
DWORD m_this; //
DWORD m_xchg_push; // xchg eax, [esp] : push eax
BYTE m_jmp; // jmp func
DWORD m_relproc; // relative jmp
};
#pragma pack(pop)

template
class CStdThunk
{
public:
struct StdThunkContext thunk;
typedef void (__stdcall T::*pTgFunc)();
public: void InitThunk(pTgFunc method, const T* pThis)
{
union { DWORD func; pTgFunc method; } addr;
addr.method = method;
thunk.m_mov = 0xB8;
thunk.m_this = (DWORD)pThis;
thunk.m_xchg_push = 0x50240487;
thunk.m_jmp = 0xE9;
thunk.m_relproc = addr.func - (DWORD)(&thunk + 1);

FlushInstructionCache(GetCurrentProcess(), &thunk, sizeof(thunk));
}
};

class CThread
{
HANDLE hThread;
DWORD ThreadID;
DWORD __stdcall _ThreadFun(LPVOID);
CStdThunk ThreadFun;

public:
CThread(LPVOID);
~CThread();
};

CThread::CThread(LPVOID lpParam)
{
hThread = NULL;
ThreadID = 0; ThreadFun.InitThunk((CStdThunk::pTgFunc)(&(CThread::_ThreadFun)),this);
hThread = CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)&(ThreadFun.thunk),
(LPVOID)lpParam,
0, &ThreadID);
if(hThread == NULL)
{
//-----------异常处理----------//
}
}
CThread::~CThread()
{

}

DWORD __stdcall CThread::_ThreadFun(LPVOID lpParam)
{
//-------在此添加线程主体过程-------//
return 0;
}
阅读更多
换一批

不是很懂,大家随便说说~~

03-12

各位大侠好~~rnrn我是学生,学软件的,学院有个SSRT项目,每个人都可以申请经费做项目,现在我有这样的想法:rnrn因为现在学生经常上网用的是这几个:网络学堂(学校给每个人开的个人空间,里面有教学公告、作业等)、e-mail、QQ、校内、飞信,我想如果能有个客户端能同时对上述几个工具进行操作就会方便得多,因为不用一遍又一遍的输入用户名密码之类的东西;还有,还希望通过这个客户端从网络学堂里得到新作业(老师布置作业是在网络学堂里)的通知,并进行提交作业等操作;还希望设置备忘录功能,当一个人的作业提交日期快要截止的时候提醒一下他(最好是通过短信)rnrn当然,这只是我初步的想法,大家看看有没有什么更好的建议,还有就是如果要实现上述功能的话要学些什么东西,我现在才上大一,会的东西很少,但这并不是问题,因为那个项目申请了之后是可以做两年的,各位大侠给点儿建议,或者是指明一下学习的方向吧,如果可行的话我就找同学组队申请项目了,我觉得我的想法还是挺实际的,就是不知道实现起来有多大的难度……rnrn大侠们随便说说吧,比如说,要实现自动登陆网络学堂得到新作业的内容(我们的网络学堂很诡异,不允许自动登录,每次登陆都必须输密码;怎么让程序代替用户登录呢??怎么得到新作业的通知呢??就好像怎么得到CSDN里的新通知那样),怎么运行客户机器上的QQ、飞信、校内通……大家说个大体的学习方向吧,或者是对我的想法提提建议rnrn这是我第一次想做SSRT项目,先谢谢大家了!!!帮顶有分~~~~~~~人多的话再加分~~~~~~~

星星 之前随便说说

05-16

对于工作rnrn入行四年了,时间很快,如果当初不学代码,现在会在哪里呢?会在做什么呢?不知道,可惜也没有机会知道了rn每天忙碌而又规律,好像工作总是无聊乏味的,如果有份工作,内容就是玩儿该多好?不过那样可能会玩儿烦了的。几次辗转,来到现在的地rnrn方,虽然不能用扎根、稳定来形容现在的状态,但是现在还没有想动的想法,或许是因为懒或许是因为没必要,或许我感觉现在我应该在这里rnrn。每天忙忙碌碌,偶尔抽空过来看看。比起当初入行时,每天上班最愁的一件事就是做什么,玩,太高调;呆着,太无聊,学习,没压力也自rnrn然没啥动力。当时,感觉上班唯一的内容就是等下班;就像...活着的唯一内容就是等死一样。感觉很不好。rn忙,也没啥不好,忙可以让我忘了时间,忘了愁心事情,忘了孤单,忘了无聊。一抬头,咦?下班了,挺好的。rn和一些老朋友和老同学叙旧时,偶尔问到你在做什么时,我就做好了花大量的时间和精力去解释:我不能盗qq号,我不是啥白领,我在这个行rnrn业还是一个小草等一系列的解释。最后不但没给对方解释明白,反而我俩同时认为我的解释很虚伪时,我就累了,就不解释了。rnrnrn对于生活rnrn有人生活和工作之间是一条线,我觉得我这里就是一堵墙,没啥缝隙的墙。我喜欢这种生活中没有任何工作痕迹的感觉,也喜欢工作时没有任rnrn何生活邂逅的环境。就是这样,几乎是两个世界。依然很恋旧,依然有点儿无厘头。也会做一些逻辑性不是很强的事:往返于292公里的老家rnrn一趟理由只为拿一个喜爱的背包,结果到宿舍发现背包丢公交上了,怕钥匙丢了就把它放到了找回来的包里,嫌包碍事,就放衣柜里,又担心rnrn不安全,就把包锁上了,等一会儿想开锁,钥匙在... ...偶尔还会被骗,我从来不觉得我傻,但是还是会被骗,可能是骗子智商太高了,最rnrn起码我是这么认为的rnrnrn对于感情rnrn把她放在后边不是因为不重要,而是因为我说她就几乎等同于纸上谈兵。朋友说这个像围城,我还不知道是不是,反正我是在城外,进城以后rnrn才有资格说他说的对不对。先结婚再恋爱的同学婚后都发出一丝酷似后悔的感慨。我想告诉他们,那不是后悔,应该是对自己告别单身的不适rnrn应和对单身感觉的恋恋不舍而已。在这个世界里,我找到了当初入行面试时,月薪1.5k试用期8个月,最后提前给我面试答案的恩师告诉我,面试你的HR说你答对的笔试题不足四分之一所以拒绝了的感觉。由于自恋和臭美的缺点还没导致心里崩塌。最后走到了这里。至于感情,还是未知。rnrnrnrnrnrnrnrnps:还差几百分星星,有点儿紧张

没有更多推荐了,返回首页