|
My English is not so good so i'm afraid i dont quit understand when you say
What does the file look like where you added it?
But here is the whole .h my file:
#include "KCSideBannerWnd.h"<br />
#include "MyBrowser.h"<br />
<br />
<br />
<br />
class CBurn : public CDialog<br />
{<br />
public:<br />
CBurn(CWnd* pParent = NULL);
CString IzaberiFolder(BOOL bNetwork);<br />
CString m_sIniFolder;<br />
enum { IDD = IDD_BURN };<br />
CButton m_btnAddFolder;<br />
CButton m_btnDel;<br />
CButton m_btnAdd;<br />
CMyBrowser m_lsFiles;<br />
CComboBox m_cmbRecorder;<br />
<br />
<br />
protected:<br />
virtual void DoDataExchange(CDataExchange* pDX);
<br />
protected:<br />
CKCSideBannerWnd m_banner;<br />
void FillRecorders(); <br />
<br />
virtual BOOL OnInitDialog();<br />
virtual void OnOK();<br />
afx_msg void OnBtnAdd();<br />
afx_msg void OnBtnAddFolder();<br />
DECLARE_MESSAGE_MAP()<br />
};<br />
<br />
<br />
#endif // !defined(AFX_BURN_H__E8A4E285_5D2F_439A_B77E_3393660D2EAC__INCLUDED_)<br />
this is fresh, I still need to add a whole lot of functions and ....
Once again thanks for trying to help me
|
|
|
|
|
You need to get in the habit of including all header files that you did not create (e.g., imapi.h) in the stdafx.h file. No, it's not required, but you'll save yourself a lot of aggravation.
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Thanks, I'll try that.
I thought that putting stuff in the stdafx.h causing program build last longer, I have that habit with something which I need in a few places. But I'm recording on CD in one place so i thought I can include imapi.h there.
I did what you recommended, included files in the stdafx.h and same errors occur:
Compiling...<br />
StdAfx.cpp<br />
c:\msdev\sdk include\propidl.h(143) : error C2011: 'tagCAUB' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(149) : error C2011: 'tagCAI' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(155) : error C2011: 'tagCAUI' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(161) : error C2011: 'tagCAL' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(167) : error C2011: 'tagCAUL' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(173) : error C2011: 'tagCAFLT' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(179) : error C2011: 'tagCADBL' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(185) : error C2011: 'tagCACY' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(191) : error C2011: 'tagCADATE' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(197) : error C2011: 'tagCABSTR' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(203) : error C2011: 'tagCABSTRBLOB' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(209) : error C2011: 'tagCABOOL' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(215) : error C2011: 'tagCASCODE' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(221) : error C2011: 'tagCAPROPVARIANT' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(227) : error C2011: 'tagCAH' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(233) : error C2011: 'tagCAUH' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(239) : error C2011: 'tagCALPSTR' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(245) : error C2011: 'tagCALPWSTR' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(251) : error C2011: 'tagCAFILETIME' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(257) : error C2011: 'tagCACLIPDATA' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(263) : error C2011: 'tagCACLSID' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(284) : error C2011: 'tagPROPVARIANT' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(486) : error C2011: 'tagPROPSPEC' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(497) : error C2011: 'tagSTATPROPSTG' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(509) : error C2011: 'tagSTATPROPSETSTG' : 'struct' type redefinition<br />
c:\msdev\sdk include\propidl.h(1402) : error C2084: function 'void __cdecl PropVariantInit(struct tagPROPVARIANT *)' already has a body<br />
Error executing cl.exe. <br />
Don't know what to do anymore
|
|
|
|
|
I did it!!!
No compile errors no more!
I've put include files i stdfax.h then I played some with Tools->Option->Directories property (put WindowsPlatformSDK ver Feb2003 to top) and suddenly no more errors on compile!
One BIG thanks to everybody who helped me (especially David Crow ). But no time to rest guy's soon I'll be back with new stuff and bug you some more, but I think you wont mine me
THANKS
P.S.
I hope I'm not going to ask you any more about this topic
|
|
|
|
|
Hi,
I need to compare times which are strings. There is a structure for time. I don't have idea about that.
Can u help out to compare times which are strings.
Thanks
|
|
|
|
|
You can:
(1) Parse the strings and compare the respective integer values obtained.
(2) Transform your string data (maybe via parsing again) to an opportune object (such a CTime instance if you're using MFC) and then using related members to perform comparison.
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.
|
|
|
|
|
Hi,
I found one function strptime which converts string to time.I have included time.h and string.h header files . Even then i am getting the error 'strptime identifier not found;
|
|
|
|
|
sireesha_sree wrote: I found one function strptime...
Where? It does not appear to be part of MSVCRT.
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
sireesha_sree wrote: i am getting the error 'strptime identifier not found
Because it isn't. Have a look at here [^]].
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.
|
|
|
|
|
If you are in VC++, you can get the strings for the time like that:
CTime time = CTime::GetCurrentTime();
CString szTime = time.Format ( "%A, %d.%B.%Y, %H:%M:%S" );
The CTime is a class and have methodes like:
GetTime Returns a time_t that corresponds to this CTime object.
GetYear Returns the year that this CTime object represents.
GetMonth Returns the month that this CTime object represents (1 through 12).
GetDay Returns the day that this CTime object represents (1 through 31).
GetHour Returns the hour that this CTime object represents (0 through 23).
GetMinute Returns the minute that this CTime object represents (0 through 59).
GetSecond Returns the second that this CTime object represents (0 through 61).
GetDayOfWeek Returns the day of the week (1 for Sunday, 2 for Monday, and so forth).
If you are in c++ then use the struct time_t (in < time.h >) and isollate every member of the struct to compare them.
Greetings.
--------
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
|
|
|
|
|
I succeded in fastforwarding the .wmv file in direct show but still
could not play rewind .
RajeshGupta
|
|
|
|
|
Do you mean play in reverse or position to an earlier time?
Some filters aren't capable of playing in reverse. Check the capabilities of the streams.
Mark
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
I mean to play in reverse i check
DWORD dwCaps = AM_SEEKING_CanSeekAbsolute | AM_SEEKING_CanSeekForwards | AM_SEEKING_CanSeekBackwards |AM_SEEKING_CanPlayBackwards;
HRESULT hr=g_pSeek->CheckCapabilities(&dwCaps);
is true . but still when i write code
g_pSeek->SetRate(-1.0);
graph could not play in reverse .
RajeshGupta
|
|
|
|
|
CheckCapabilities() returns true? That's not a proper capabilities check - actually if all the
capabilities you check for are available, it should return S_OK, which would be FALSE.
Regardless, the method returns an HRESULT, not a bool.
You should check something like this:
DWORD dwCaps = AM_SEEKING_CanSeekAbsolute | AM_SEEKING_CanSeekForwards
| AM_SEEKING_CanSeekBackwards | AM_SEEKING_CanPlayBackwards;
HRESULT hr=g_pSeek->CheckCapabilities(&dwCaps);
if (hr != S_OK)
{
if (dwCaps & AM_SEEKING_CanPlayBackwards)
{
}
else
{
}
}
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
I am getting in step
if (dwCaps & AM_SEEKING_CanPlayBackwards)
{ // can play backwards }
can playback . but when i set rate
g_pSeek->SetRate(-1.0);
but is not playing in backbard . it just stop.
can you suggest me more refinement
RajeshGupta
|
|
|
|
|
What is the return value from g_pSeek->SetRate(-1.0); ?
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|
|
the return value is 0. send me peace of code so that I can understand
clearly
RajeshGupta
|
|
|
|
|
Hi
I am in great trouble and still could not find the answer how to
rewind the wmv file.
RajeshGupta
|
|
|
|
|
still I could not able to rewind the file . can any one give me more help
that is explaned above with the help of some piece of source code.
RajeshGupta
|
|
|
|
|
I want to post a user defined message WM_PRINTLOG to the Main window in a Dialog based application from another thread started by the dialog.
That messag will be handled By a handler PrintLog(CString message) which prints the string(message) in to the edit box.
My question when i call PostMessage() how can i send the string (message) to the handler.
and how can i get the message at the ON_MESSAGE macro.
Thank you.
KIRAN PINJARLA
|
|
|
|
|
kiran.pinjarla wrote: ON_MESSAGE
ON_MESSAGE handlers have the following signature
<code>LRESULT SomeMessage( WPARAM wString, LPARAM lNotUsed )</code>
{
if( !wString )
{
return 0;
}
CString* pString = reinterpret_cast<CString*>( wString );
MessageBox( *pString );
}
UINT SomeThreadFunc( LPVOID lpvParam_i )
{
CString csSomeCString = _T( "Nibu" );
::<code>SendMessage</code>( AfxGetMainWnd()->GetSafeHwnd(), WM_PRINTLOG, reinterpret_cast< WPARAM >( &csSomeCString ), 0 );
}
|
|
|
|
|
Thank you Nibu
KIRAN PINJARLA
|
|
|
|
|
UINT SomeThreadFunc( LPVOID lpvParam_i )
{
CString csSomeCString = _T( "Nibu" );
::SendMessage( AfxGetMainWnd()->GetSafeHwnd(), WM_PRINTLOG, reinterpret_cast< WPARAM >(&csSomeCString ), 0 );
}
Regarding to your comments. For user defined messages, people usually do Posting not Sending as PostMessage will return immedietly and thus lessen the thread delays. Use SendMessage if there is a reason for that.
Actually, your comment about newing and deleting is wrong. It is here we should either avoid of newing in a worker thread by posting it to UI thread or use SendMessage instead [opposed to what is said by comments]. The problem is the race condition [I'd say an obvious race condition]; if you PostMessage a newed object into another thread you may never be away whether that object has been deleted or not. A simple scenario is when the user closes the application jsut after the worker thread has done a PostMessage but before the UI thread ges informed about the message posted. Even with SendMessage you have to use some synchronization to avoid such unfavourable situations.
--
=====
Arman
|
|
|
|
|
Arman Z. Sahakyan wrote: people usually do Posting not Sending as PostMessage will...
...not cause a deadlock if the messagepump receiving the message happens to be in a blocked state.
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
kiran.pinjarla wrote: My question when i call PostMessage() how can i send the string (message) to the handler.
Allocate it on the heap.
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|