|
OK
I would begin from the other side:
0. remove your VectorArray using
1. Inserting loop at initializing:
NOTINFO* pInfo = new NOTINFO;
pInfo->nEpoch = ...;
2. URGENTLY: Removing loop at destroying:
NOTINFO* pInfo = (NOTINFO*) GetItemParam(i);
delete pInfo;
virtual void BeHappy() = 0;
|
|
|
|
|
NOTINFO* pInfo = new NOTINFO; this has to be done inside or out side the loop
|
|
|
|
|
Inside the loop, for each item (as well delete in the destroying loop)
virtual void BeHappy() = 0;
|
|
|
|
|
what i did is
inside for loop
...........
NOTATIONINFO *NotationList = new NOTATIONINFO;
.......
.......
lvi.Param =(LPARAM)NotationList;
.......
new for loop
for (int i = 0; i < Nnots; i++)
{
NOTATIONINFO *NotationList = (NOTATIONINFO*)GetItemParam(i);
delete NotationList;
}
error ......
Error 19 error C3861: 'GetItemParam': identifier not found c:\TWin_maintenance\TWIN\Notations &
|
|
|
|
|
Please place the second loop
at destroying of the list (WM_DESTROY reaction)
...
case WM_DESTROY:
{
LVITEM lvItem = {0};
for (int i = 0; i < Nnots; i++) {
lvItem.iItem = i;
lvItem.mask = LVIF_PARAM;
ListView_GetItem(hwndList, &lvItem);
NOTINFO* pInfo = (NOTINFO*) lvItem.lParam;
delete pInfo;
}
}
break;
...
virtual void BeHappy() = 0;
|
|
|
|
|
HURAAAAAAAAAAAAAAAAAAAAY
its coming properly for event coloumn click
|
|
|
|
|
Please see the properly deleting in the code above
And now it is time to make the sorting for different columns...
virtual void BeHappy() = 0;
|
|
|
|
|
done .....
Thanks a looooooot again...
sorry if i disturbed you with of my less knowledge.......
|
|
|
|
|
thaaaaaaaaaaaaaaaaanks
still the delete part is not done.............
|
|
|
|
|
and some time message box coming
with caption
002 ,Native :1305,origin:[Microsoft]ODBC microsoft Access Driver
|
|
|
|
|
Good catch!
|
|
|
|
|
Hi all,
I am working on a feature where in we can allow/disallow changing system time to any user. We can run this application from an administrator's account and set if a particular user can change system time or not. Even the administrator (who itself is logged on) itself can allow/disallow himself changing time.
While googling I found that there is some, The system user right SeSystemtimePrivilege that controls the ability to set the system time. I could not find how to complete my feature via the privilege SeSystemtimePrivilege using C#.
Can somebody help me how to that using c# (or even C++). Even if there is some other way of implementing this feature, please let me know.
Thanks in Advance
Best Regards
Aseem
|
|
|
|
|
|
a good sample is here
In c#, you may use those APIs by [DllImport("advapi32.dll", ..... ]
|
|
|
|
|
Hello everybody ! In my project , usually compiled this error :
BSCMAKE: error BK1505 :cannot read from file 'Debug/Test.bsc'
Error excuting bscmake.exe
Test.exe - 1 error(s),0 warning(s)
I found it any where ,but faild ,because only a little material.
like M$ :http://msdn.microsoft.com/en-us/library/aa933967.aspx[^]
How to solve this problem ?
Thanks for you reply !
Best Reguards !
|
|
|
|
|
|
|
Do you compile for WinCE ?
1) You shold not mix CE and PC projects in a solution
2) Please check the projects target configuration
in the solutions configurations manager.
2a) CE_MUST: CE target SDK is installed and the project has its configuration
2b) Sometime a CE/PC project has not a - for example Debug - configuration
3) Try to delete *.bsc files from your solution directory and rebuild all
virtual void BeHappy() = 0;
|
|
|
|
|
No , It just in my MFC application ,I used the Excel COM Interface to read some dates from the table.
but the compile post this error code!
|
|
|
|
|
I am creating thread using AfxBeginThread in Visual Studio 2005 and the first parameter of this function is function pointer so i am passing member function pointer of that class but it gives error i.e.
my code is:
AfxBeginThread( &CMultithreadingInDialogDlg::MyThreadProc, GetSafeHwnd() );
in which MyThreadProc is member function. and the error is
error C2665: 'AfxBeginThread' : none of the 2 overloads could convert all the argument types.
but it is working if i am passing function pointer of any static function or global function
thanks in advance.
|
|
|
|
|
Is MyThreadProc() a static member of CMultithreadingInDialogDlg ?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
MyThreadProc is not a static function, it is simple member function.
|
|
|
|
|
Which means it cannot be used an argument to AfxBeginThread() .
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Man who follows car will be exhausted." - Confucius
|
|
|
|
|
kartikthakre wrote: but it is working if i am passing function pointer of any static function or global function
That is also the "classical" way
to pass - for example - a private static function of a dialog...
...
class CYourDialog : public CDialog
{
bool m_bWorking;
CWinThread* m_pcThread;
static DWORD WINAPI ThreadProc(CYourDialog*);
...
public:
CYourDialog(CWnd* pcParent = NULL);
~CYourDialog();
...
void On();
void Off();
...
};
...
CYourDialog::CYourDialog(CWnd* pcParent )
: CDialog(CYourDialog::IDD, pcParent),
m_bWorking(false),
m_pcThread(NULL)
{
...
}
CYourDialog::~CYourDialog()
{
Off();
}
CYourDialog::On()
{
if (!m_bWorking && !m_pcThread) {
m_bWorking = true;
m_pcThread = AfxBeginThread(ThreadProc, this);
}
}
CYourDialog::Off()
{
if (m_bWorking && m_pcThread) {
m_bWorking = false;
WaitForSingleObject(m_pcThread->m_hThread, INFINITE);
m_pcThread = NULL;
}
}
DWORD WINAPI CYourDialog::ThreadProc(CYourDialog* pcDlg)
{
while (pcDlg && pcDlg->m_bWorking) {
Sleep(1);
}
return 0;
}
virtual void BeHappy() = 0;
modified on Thursday, April 1, 2010 2:42 AM
|
|
|
|
|
Perhaps it's just a typo, but if not you should be aware of the following:
There's a big risk the thread will never exit as you've failed to declare the m_bWorking variable as volatile .
It depends on your optimization settings.
The compiler may choose to hold the variable in a register in the while-loop, not reading it from its actual memory location since it's not being modified in the while-loop.
Declaring it as volatile will tell the compiler that the variable must be read from its memory location and cannot be optimized into a register.
"It's supposed to be hard, otherwise anybody could do it!" - selfquote "High speed never compensates for wrong direction!" - unknown
|
|
|
|