|
plz try to delete Buffer using....
delete [] pBuffer;
Just try this.
thanks.
|
|
|
|
|
Thanks Ashish for ur reply..
i tried with delete []pBuffer .. but doesn't workout for this ..!
as per my view the reason for my problem must be ..
it tries to delete the pointer which is Still in use because in the whole code when i delete the other poniters it is ok but as the last statement uses the pointer for writing the data and in the next statemnt it is tried to delete it ...!!
does it make sense ..?
|
|
|
|
|
Hello Shikha,,
Can you post some part of code in which you are allocating memory and writing on that memory.
Then after I can know what the real problem is.
Ok.Thanks.
|
|
|
|
|
As mentioned before, you should use delete[]. You should keep in mind this simple rule: when you use new, use delete; when you use new[] use delte[]. That's simple.
Now, for your problem, it looks like you are overwriting your buffer (you are writing data outside of your allocated memory). But it is very difficult for us to spot the problem because there is no relevant code. So, please post some relevant code where you are writing in the buffer (and how you allocate it). And please use the formatting tags for your code (unless it will be unreadable).
|
|
|
|
|
hi
i am creating vertical scroll bar for edit box,My problem is that how can i know the ractangle size of edit box so that i can give same vertical size to vertical scrool bar.I used
CRect rect;
objectOfCEdit.GetClientRect(&rect);
but i got an error on line second.How can i solve this problem
thank u in advance
|
|
|
|
|
Plzz write the full code.
Come online at:-
jubinc@skype
|
|
|
|
|
i have solve this.Can u tell me how can i count the number of lines on edit box
thank u
|
|
|
|
|
Hello..........all's
Can any one told me how to make run time combo box in VC++
my backend data base is Oracle
Regard's
Kaushik
|
|
|
|
|
Work has been finish ........
No need to reply now..
Bye all's
Regard's
Kaushik
|
|
|
|
|
Except combobox you can make each control at run time.
|
|
|
|
|
Any control can be created at runtime with CreateWindow() or
CreateWindowEx(). The lpClassName parameter determines the type of
control created.
For common control classnames, see Control Library[^]
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Dear DirectShow experts,
I have got a DShow based audio application that can use DMO Audio Effects
(e.g. the DirectX built-in ParamEQ) and show their property pages in order
to let the user change the effect settings. The DMOs are handled through the
DMO Wrapper Filter of DShow.
All works fine since years under Win2k and XP, but not so with Vista. Audio
Processing also works as expected there, but if I try to get the Property
Page of an DMO, I get 0x80040154 (Class not registered) as result. What
might be the reason?
Here is the relevant part of the code:
-------
IBaseFilter* pIFilter = pMyFilter;
ISpecifyPropertyPages* lpSPP = NULL;
hRes = pIFilter->QueryInterface(IID_ISpecifyPropertyPages, (void**)&lpSPP);
if(hRes == S_OK)
{ // filter has property page
FILTER_INFO FilterInfo;
hRes = pIFilter->QueryFilterInfo(&FilterInfo);
if(SUCCEEDED(hRes))
{
CAUUID* pCAUUID = (CAUUID*)CoTaskMemAlloc(sizeof(CAUUID));
memset(pCAUUID, 0, sizeof(CAUUID));
hRes = lpSPP->GetPages(pCAUUID);
if(SUCCEEDED(hRes))
{
for (UINT j = 0; j < pCAUUID->cElems; j++)
{ // Create CPropertyPages and Property page sites.
IPropertyPage* pPropPage = NULL;
hRes = CoCreateInstance(pCAUUID->pElems[j], NULL, CLSCTX_INPROC_SERVER,
IID_IPropertyPage, (void **) &pPropPage);
ASSERT(pPropPage);
// with VISTA, this pointer is NULL and hRes == 0x80040154 (Class not registered)
// meanwhile with 2k and XP it works fine
if(pPropPage)
{ // further processing
}
}
}
if(pCAUUID->pElems)
CoTaskMemFree(pCAUUID->pElems);
CoTaskMemFree(pCAUUID);
}
}
lpSPP->Release();
-------
Thank you very much in advance for your advice!
Robert
|
|
|
|
|
If the program is the sort with a visible `int main(argc,argv)' function, the answer is easy.
But what in the Windows type of program that is called through a WinMain()? In Borland C++ 4.5, there are two system-declared variables _Argc and _Argv which on entry to WinMain point to the program's call argument table; but that does not work in Visual C++ 2008.
|
|
|
|
|
There's a Win32 function called GetCommandLine[^]
And CommandLineToArgv will split it into an array for you.
- S
50 cups of coffee and you know it's on!
|
|
|
|
|
|
|
http://www.alexfedotov.com/samples/enumrot.asp
I can enumerate objects in ROT using the code in the link.
How can I get objects exposed by these running objects ?
Will I use IMoniker::BindToObject for the rest ?
Regards...
|
|
|
|
|
It would help if I knew what you're trying to achieve but yes, generally you'd call BindToObject . In other scenarios you'd call BindToStorage .
Steve
modified on Thursday, December 20, 2007 9:33:44 PM
|
|
|
|
|
Hi,
I'm getting some terrible performance when calling ifstream close. It takes about the same amount of time to close() as it takes to read my 64 Mb of data! I've been playing around with it and found it only happens if I have been writing to a file recently. Here's my test code:
void readTest(const std::string & path)
{
ifstream in;
in.open(path.c_str(), ios_base::in | ios_base::binary);
char * buffer = new char[67108864];
in.read(buffer, 67108864);
SW_ELAPSED_MSG()
in.close();
SW_ELAPSED_MSG()
delete [] buffer;
}
void writeTest(const std::string & path)
{
ofstream out;
out.open(path.c_str(), ios_base::out | ios_base::binary);
char * buffer = new char[67108864];
out.write(buffer, 67108864);
out.close();
delete [] buffer;
}
int _tmain(int argc, _TCHAR* argv[])
{
writeTest("testfile");
SW_START();
readTest("testfile");
SW_ELAPSED_MSG()
return 0;
}
Note my macros do the timing and display it on screen. I don't believe there's any problem with that code.
So anyone know why? I'm closing the streams. Why is the read stream affected at all by the write stream? Also as you can see I have a flush() statement in there. It doesn't help, commented or not.
|
|
|
|
|
Hi,
I'm stumped.
Why does this code compile without problems but cause a runtime error? ("Debug Assertion Failed! ... Expression: vector iterators incompatible")
<br />
vector< vector<string> >::iterator vvsi_b = (a.Block()).begin();<br />
vector< vector<string> >::iterator vvsi_e = (a.Block()).end();<br />
<br />
for (; vvsi_b != vvsi_e; ++vvsi_b)<br />
{<br />
}<br />
</string></string>
a.Block() returns a const reference to a vector< vector< string > > object
I'm using Visual C++ 2005 Express.
Any help (and consequent hair retention) greatly appreciated.
Phil
|
|
|
|
|
Correction:
The quoted code should be:
vector< vector<string> >::iterator vvsi_b = (a.Block()).begin();
vector< vector<string> >::iterator vvsi_e = (a.Block()).end();
for (; vvsi_b != vvsi_e; ++vvsi_b)
{
// etc.
}
Phil
|
|
|
|
|
The codeproject message parser keeps removing part of the code I'm posting.
The code should refer to a vector of vector of string, but the string part keeps being removed from the post. How do I post so the code stays the way I want?
Phil
|
|
|
|
|
Member 73301 wrote: The code should refer to a vector of vector of string, but the string part keeps being removed from the post. How do I post so the code stays the way I want?
post code snippets between <pre> TAGS, i.e.
<pre>
...code here..
...code here...
</pre>
also when showing templates use the escape sequence for < (< ).
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
[my articles]
|
|
|
|
|
Ok, the code that fails in Visual C++ 2005 Express is (if this formats ok):
vector < vector < string > > ::iterator vvsi_b = (a.Block()).begin();
vector < vector < string > > ::iterator vvsi_e = (a.Block()).end();
for (; vvsi_b != vvsi_e; ++vvsi_b)
{
}
Any idea why this causes the runtime error "Debug Assertion Failed! ... Expression: vector iterators incompatible" ?
Phil
|
|
|
|
|
Where is the assertion happening? What line in your code?
Steve
|
|
|
|