|
That's not what I mean.
FOURCC fourcc; (in fourcc there are four characters)
this gives something like this: 880175460
how can i retrieve the four characters from var fourcc?
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|
|
I guess Prem Kamur needs to refine his psycic abilities
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
char *strFourCC = reinterpret_cast<char*>(&fourcc);
Then you could index the four characters. It will not be a valid null terminated string because there is no NULL, but you could still do strFourCC[0] and so on.
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
I get syntax error on '('.
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|
|
Sorry I forgot about the HTML formatting, here you go!
char *strFourCC = reinterpret_cast<char*>(&fourcc);
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
tnx
that's it allright
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|
|
Hi,
Not sure if this is the right place to ask, but I am trying to use a regex parser to find some text in a text file. How would I write a regular expression that something like:
the word "Theodore" at the beginning of a line, followed by six lines of anything whatsoever, followed by a single lnie that I am iterested in.
I am having trobule matching part about find the next 6 lines with anything whatsoever in them
Thanks,
Aaron
|
|
|
|
|
It all depends on the syntax of your parser. But have you tried to make a definition for a line?
I will just use pseudo-code, but it would be something like this:
(0 or more characters) + (1 newline character)
Then in your large expression you could look for your target word, then 6 lines, and search for what ever in the single line that you are interested in.
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
I am using the boost regular expression parser. I'm pretty new to it, I think it's basically like PERL.
How would I make a definition?
Thanks,
Aaron
|
|
|
|
|
I am sorry I am not familiar with either of those tools. However if you simply create a string definition to pass your regular expression in the boost kit, you can just create a string and enclose it in ( ).
Then you can construct a larger string from all of the smaller strings. There may be better ways to construct expressions with your parser, if I get a chance to look at boost I may post something a little more concrete.
Good Luck!
Build a man a fire, and he will be warm for a day Light a man on fire, and he will be warm for the rest of his life!
|
|
|
|
|
Try this:
[code]
^"Theodore"(.*\n){6}
[/code]
This should do the first line and the 6 lines. (according to the standard used by the flex scanner)
Best regards,
Alexandru Savescu
|
|
|
|
|
I don't want exit Dialog by click Close button (x) default, help me!!!
|
|
|
|
|
Just handle the WM_CLOSE message but don't call the base class's handler.
You could also change the dialog style to not display the close button at all.
--
Dana Holt
Xenos Software
|
|
|
|
|
A better way is to handle WM_SYSCOMMAND and to do nothing (i.e. simply return) if the code is SC_CLOSE .
/ravi
"There is always one more bug..."
http://www.ravib.com
ravib@ravib.com
|
|
|
|
|
is it possible to enable/disable one tab from one propertysheet at run time??
how can create all the tabs , and then at run time, disable a tab makeing it gray and not able to click it??
thanks
Max
|
|
|
|
|
I do not think you can disable a menu item.
But you could delete and add the item back.
|
|
|
|
|
Paul DiLascia answered this question, search MSDN (Q&A: C++ in Microsoft system journal) for 'CTabCtrlWithDisable'.
|
|
|
|
|
I cover this in a demo in my MFC book (see sig). It's a fairly involved process, but here are the basic steps. Let me know if you need any additional help and I'll send you a demo app.
- Create a member variable to store the current tab index.
- Create an array member variable to hold all of the index values for the currently disabled tabs.
- Handle the TCN_SELCHANGING notification message to set the current tab index.
- Handle the TCN_SELCHANGED notification message to decide if you want to enable the tab to be activated. If you don’t, you must post a PSM_SETCURSEL message. In this message, the last active tab index is specified.
Let me know if you need it and I'll send you the demo app from the book
Cheers,
Tom Archer
Author - Inside C#, Visual C++.NET Bible
|
|
|
|
|
thanks for the help
i see that there is no standart way of doing this...
this is realy a good way
thanks
(will try it this weekend)
|
|
|
|
|
|
In an avi you've got keyframes and other frames. for example, you can have a keyframe each 100 frames.
I'm using the function AVIStreamWrite(...) from the avifile library.
You can pass AVIIF_KEYFRAME for the DWFLAGS parameter when the frame you're going to write is a keyframe.
ok, so far so good.
But, what if you want to write a non-keyframe?
Can we get that dwflag from the source stream? (to write raw data without processing)
I'm running around in circles for ages now
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|
|
Here's a snippet I have used for writing AVI files. I have always used DWFLAGS = 0 for normal frames.
// Get a frame
CCapture::SnatchDIB( &m_rcWindow,
m_hwndWindow,
m_hdcWindow,
&pDIB,
&m_rcBitmap,
m_bWindowNotAligned);
LPBITMAPINFO pBitmapInfo = (LPBITMAPINFO)pDIB;
// Is it time for a key frame?
if (dwNextKeyFrame <= 0) {
dwFrameType = AVIIF_KEYFRAME;
dwNextKeyFrame = m_CaptureProfile.dwVideoFPS;
} else {
dwFrameType = 0;
}
// Write it to the stream
if (pBitmapInfo != NULL) {
TRACE("Writing frame %d...\n", dwFramesWritten);
AVIStreamWrite( m_pAVIStreamCompressed,
dwFramesWritten,
1,
(LPBYTE)pBitmapInfo + pBitmapInfo->bmiHeader.biSize + pBitmapInfo->bmiHeader.biClrUsed * sizeof(RGBQUAD),
pBitmapInfo->bmiHeader.biSizeImage,
dwFrameType,
NULL,
NULL);
dwFramesWritten++;
dwNextKeyFrame--;
}
--
Dana Holt
Xenos Software
|
|
|
|
|
tnx Dana, but this is only part of the solution.
If you've got a source avi, how can you know if a frame is a keyframe or a normal frame? Is there a function that gets something like a KEYframe-rate, cause not all streams use 1/100?
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|
|
After reading your message again I see the other part you are asking.
I've never read from one AVI stream into another. I have only created new AVI files from bitmaps. In this case I just let the user decide how often to insert key frames.
After a quick search of MSDN this looks like a good lead:
The AVICOMPRESSOPTIONS structure contains information about a stream and how it is compressed and saved.
I have used this structure to create compressed streams, but you may also be able to get the structure for a source stream. I wish I could be of more help.
Regards,
--
Dana Holt
Xenos Software
|
|
|
|
|
Is there a place to get/view some c++ code, concerning the avifile-api?
msdn is not helping here, cause it misses some pages about the topic (avistreamwrite is missing...).
It appears that the codec for div-x avifiles cannot be used, returns no codec for ICOPEN on a div-x avistream. correct?
[VISUAL STUDIO 6.0] [MFC] [WIN98/2]
Bluute tette!
|
|
|
|