#if !defined(AFX_GEOTRANS1_H__348C83D6_4910_495A_953E_4020CF9A5D48__INCLUDED_)
#define AFX_GEOTRANS1_H__348C83D6_4910_495A_953E_4020CF9A5D48__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000#include "Dib.h"class CGeoTrans : public CObject
{
public:
void Scale(CDib* pOrigDib, int nWidth, int nHeight, int nOperation);
BOOL MirrorY(CDib* pOrigDib, int x, int y, int nWidth, int nHeight);
BOOL MirrorX(CDib *pOrigDib, int x, int y, int nWidth, int nHeight);
CGeoTrans();
virtual ~CGeoTrans(); BOOL TranslationDIB1(CDib* m_pCurrentDib, LONG lXOffset, LONG lYOffset);
void Rotate(CDib* pOrigDib, int nXCenter, int nYCenter, float fTheta);
// HLOCAL m_hGEO; //控制内存分配
private:
BYTE* lpNewDIBBits;
HLOCAL hNewDIBBits;
CDib* m_pTransDib;
#ifdef _DEBUG
virtual void Dump(CDumpContext& dc) const;
virtual void AssertValid() const;
#endif};#endif // !defined(AFX_GEOTRANS1_H__348C83D6_4910_495A_953E_4020CF9A5D48__INCLUDED_)以下是部分调试不通过的代码..
.cpp中有一个函数用到了BYTE* lpNewDIBBits;
HLOCAL hNewDIBBits;
CDib* m_pTransDib;
例如:
m_pTransDib = new CDib;
m_pTransDib->DibCopy(pOrigDib); hNewDIBBits = LocalAlloc(LHND, nOrigDibWidthBytes * pOriginDib->m_nHeight);
if (hNewDIBBits == NULL)
{
// 分配内存失败
::AfxMessageBox("分配内存失败");
return FALSE;
}
// 锁定内存
lpNewDIBBits = (BYTE*)LocalLock(hNewDIBBits);
#define AFX_GEOTRANS1_H__348C83D6_4910_495A_953E_4020CF9A5D48__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000#include "Dib.h"class CGeoTrans : public CObject
{
public:
void Scale(CDib* pOrigDib, int nWidth, int nHeight, int nOperation);
BOOL MirrorY(CDib* pOrigDib, int x, int y, int nWidth, int nHeight);
BOOL MirrorX(CDib *pOrigDib, int x, int y, int nWidth, int nHeight);
CGeoTrans();
virtual ~CGeoTrans(); BOOL TranslationDIB1(CDib* m_pCurrentDib, LONG lXOffset, LONG lYOffset);
void Rotate(CDib* pOrigDib, int nXCenter, int nYCenter, float fTheta);
// HLOCAL m_hGEO; //控制内存分配
private:
BYTE* lpNewDIBBits;
HLOCAL hNewDIBBits;
CDib* m_pTransDib;
#ifdef _DEBUG
virtual void Dump(CDumpContext& dc) const;
virtual void AssertValid() const;
#endif};#endif // !defined(AFX_GEOTRANS1_H__348C83D6_4910_495A_953E_4020CF9A5D48__INCLUDED_)以下是部分调试不通过的代码..
.cpp中有一个函数用到了BYTE* lpNewDIBBits;
HLOCAL hNewDIBBits;
CDib* m_pTransDib;
例如:
m_pTransDib = new CDib;
m_pTransDib->DibCopy(pOrigDib); hNewDIBBits = LocalAlloc(LHND, nOrigDibWidthBytes * pOriginDib->m_nHeight);
if (hNewDIBBits == NULL)
{
// 分配内存失败
::AfxMessageBox("分配内存失败");
return FALSE;
}
// 锁定内存
lpNewDIBBits = (BYTE*)LocalLock(hNewDIBBits);
解决方案 »
- VC 右键当前对话框任务栏 响应什么消息?
- CListCtrl 插入第11列 ?
- 有TCP穿透代理服务器的程序源码 ,代理协议用socket5?
- 我在做一个播放器,哪位高手知道怎么设置本程序的音量,而不改变系统的音量
- typedef BOOL (CObject::Connection)();
- 我想从delphi转到VC++,请问有必要吗?
- 关于线程的问题请帮帮忙
- CString类对象的使用出错,请帮忙解决
- 我在win2000server下用VC6.0写的一个 ADO调用远程数据库程序在Prefession上不能运行为什么?
- 高手清帮忙:如何获得一个控件的电子签名认证?急,急,急!
- 新手提问
- _Recordset*是什么类型
m_pTransDib = LocalAlloc(LHND, nOrigDibWidthBytes * pOriginDib->m_nHeight);
lpNewDIBBits = (BYTE*)LocalLock(hNewDIBBits);
就在这三句话上调试不通过..
如果我把成员变量m_pTransDib、 m_pTransDib、 lpNewDIBBits分别定义到成员函数的内部就没有什么问题了..为什么啊??为什么??
BYTE* lpNewDIBBits;
HLOCALhNewDIBBits;
CDib* m_pTransDib;
定义成public试试
public:
BYTE* lpNewDIBBits;
HLOCALhNewDIBBits;
CDib* m_pTransDib;