short x_buff[8][1000];
short *fstbuff;
fstbuff=(short *)x_buff;
BOOL result=ptrReadUSB->InitUSB(fstbuff,0,0);
...
在组件中:
CReadUSB::CReadUSB()
{
m_ThreadHandle = NULL;
pTP=new ThreadParameters;//pTP结构体
pTP->x_buff=0;//short *x_buffunsigned long ThreadId;
m_ThreadHandle = CreateThread(NULL,0,&ThreadProc,pTP,0,&ThreadId);
}
STDMETHODIMP CReadUSB::InitUSB(short *x_buff,long netctrl, long filter)
{pTP->x_buff=x_buff;}//此时内存指针为:0x004199bc
DWORD WINAPI CReadUSB::ThreadProc(LPVOID lpParameter){
ThreadParameters* USBpTP=(ThreadParameters*)(lpParameter);//这个时候,pTP结构中的x_buff已经不是在initUSB中传入的内存指针,而是比那个传入的指针多几个内存单元(0x004199c0)
CoInitializeEx(NULL, COINIT_MULTITHREADED);
...}
这是怎么回事,请指教!
short *fstbuff;
fstbuff=(short *)x_buff;
BOOL result=ptrReadUSB->InitUSB(fstbuff,0,0);
...
在组件中:
CReadUSB::CReadUSB()
{
m_ThreadHandle = NULL;
pTP=new ThreadParameters;//pTP结构体
pTP->x_buff=0;//short *x_buffunsigned long ThreadId;
m_ThreadHandle = CreateThread(NULL,0,&ThreadProc,pTP,0,&ThreadId);
}
STDMETHODIMP CReadUSB::InitUSB(short *x_buff,long netctrl, long filter)
{pTP->x_buff=x_buff;}//此时内存指针为:0x004199bc
DWORD WINAPI CReadUSB::ThreadProc(LPVOID lpParameter){
ThreadParameters* USBpTP=(ThreadParameters*)(lpParameter);//这个时候,pTP结构中的x_buff已经不是在initUSB中传入的内存指针,而是比那个传入的指针多几个内存单元(0x004199c0)
CoInitializeEx(NULL, COINIT_MULTITHREADED);
...}
这是怎么回事,请指教!
解决方案 »
- 请教:如何申请突破2G以上的内存。
- 关于MDI最大化过程中屏幕出现抖动的
- 遇到一个难题,如何通过句柄,得到 IShockwaveFlash 接口
- 怎样在listview控件的某一列中插入图片?
- 奇怪的显示,牛人都说没见过.
- 关于Moden来电显示
- 关于CRichEditCtrl的问题,在XP下正常,在98下面就不行了!
- 我怎样给线程添加自定义消息
- 两个关于 ADO 的问题想请教!各位大哥能帮助我解决吗?
- 一个很简单的显示数据的问题,我很迷惑,帮帮我
- 怎么在控制台程序里跳出另外一个控制台进程?
- 请教各位大哥帮解决一个问题。 关于Sleep()吧。 是个SDK的小程序。分不够的话,再送100!!!
共享内存是怎么实现的?不会是#progma吧,它只是在dll中共享,我的目的是和应用程序共享内存