|
|
Does anyone know how I can upgrade dbghelp.dll?
---
Yours Truly, The One and Only!
web: devmentor.org
Design, Code, Test, Deploy
|
|
|
|
|
I've found out that it seems one cannot replace or upgrade the dbghelp.dll that comes installed with the system. If anyone knows otherwise, please let me know!
---
Yours Truly, The One and Only!
web: devmentor.org
Design, Code, Test, Deploy
|
|
|
|
|
I am attempting to find how many rows of text will print per page from a rich edit control in a dialog box. Is there a method for finding the actual height of a text line? Neither the LOGFONT nor the CHARFORMAT nor the TEXTMETRIC structures provide this info accurately.
Doug C
|
|
|
|
|
|
Since rich edit text can have different formatting, the number of
lines per page can vary.
The only reliable way I know is to format the text for the device it
will be printed on, then calculate how many rows.
With a combination of some of the code here[^] and the EM_EXLINEFROMCHAR
message, you should be able to calculate the number of lines per page.
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
A moved rectangle how does secure to the const size of itself. Forexample CRect(10,10); It must secure to these sizes when it go move forward. Please help with MFC.
Bitte tun Sie mir nicht antworten, wenn Sie nicht wissen, die Ursache des Problems wirklich oder nur als Antwort. Was ist das? Dies ist das Buch sitzen.
|
|
|
|
|
CRect rect(10, 10, 90, 90);
rect.MoveToXY(3, 5);
Maxwell Chen
|
|
|
|
|
Hakan D wrote: CRect(10,10);
Where did you find such a contructor?
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]
|
|
|
|
|
Please, don't take that CRect(10,10); into consideration. I has just to mean that CRect(0,0,10,10); is it okay?
Bitte tun Sie mir nicht antworten, wenn Sie nicht wissen, die Ursache des Problems wirklich oder nur als Antwort. Was ist das? Dies ist das Buch sitzen.
|
|
|
|
|
It is OK. Now: What do you want to do with it?
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]
|
|
|
|
|
I am at start a game programming. This will be a F16 dog-fight glass simulate game.
modified 13-Mar-13 6:06am.
|
|
|
|
|
Very good.
Anyway, I was asking about your original post. Do you have to move the rectagle while keeping fixed its dimensions?
If the answer is yes then check out Maxwell Chen reply http://www.codeproject.com/script/Forums/View.aspx?fid=1647&msg=2378427[^]
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]
|
|
|
|
|
Yes. Thank for your help.
Bitte tun Sie mir nicht antworten, wenn Sie nicht wissen, die Ursache des Problems wirklich oder nur als Antwort. Was ist das? Dies ist das Buch sitzen.
|
|
|
|
|
Is there any way to control the unlock order when multiple threads have a CCriticalSection locked? I have a situation where multiple threads will be waiting on a lock, but I when it becomes available I would like the 'oldest' thread to unlock rather than a random thread.
I think I will need to roll my own locking scheme that takes the lock sequence into account, but I thought it was worth asking.
|
|
|
|
|
Based on your stated requirements it sounds like you could use a thread pool with a FIFO queue
|
|
|
|
|
Release roder for threads is decidedly not controllable. There's a fun statement of "the scheduler will be fair to all threads" (of the highest priority that can run), in MSDN.
Rob Caldecott wrote: I think I will need to roll my own locking scheme that takes the lock sequence into account
Ahhh, writng your own scheduler
|
|
|
|
|
No it sounds like what you need is a shared request queue. Each thread places an item on the queue containing an Event handle then waits on that handle, a worker thread takes each queue item in turn and sets the associated event. If you block the worker thread then all the others queue up as and when they need to but get released in order of oldest (longest waiting) first. The queue will need its own locking of course. If you're deparate I have some multi-threaded subscriber queue code knocking around (every subscribing thread gets to process every item exactly once) It's not very similar or very simple so you might be better looking elsewhere for examples. I'm disappearing for the weekend very shortly as well.
Nothing is exactly what it seems but everything with seems can be unpicked.
|
|
|
|
|
I need to build an application that views two avi files side by side, similar to comparing a person's golf swing in the left frame with an expert's swing in the right frame. That isn't the application, just an analogy. I need to control the speed, slow motion/normal, pause, reverse, all the normal stuff. I'm probably searching using the wrong word or phrase, but I haven't found much of anything useful other than MCIWnd. I expected to find a long list of activeX controls, but haven't. Can anyone suggest something?
Thanks
Danny
|
|
|
|
|
|
|
Why you cant use of MCI functions?
|
|
|
|
|
Hi~
Actually, I am a student, and working on a chat client program.
I would like to create asynchronous socket but not the default CAsynsocket one.
But I encounter a problem, that is how to create hWnd for WSAAsyncSelect.
I have read several articles in this site as well as some found in the internet.
here is code
<code>
define WM_WINSOCK 12345
SOCKET theSocket = socket(AF_INET, SOCK_DGRAM,0);
if(theSocket == SOCKET_ERROR)
{
MessageBox("Failed socket()");
}
bool sock_opt = TRUE;
setsockopt(theSocket, SOL_SOCKET, SO_REUSEADDR, (char*)&sock_opt, sizeof(sock_opt) );
HWND Window;
HINSTANCE m_hInstance = AfxGetInstanceHandle();
Window = CreateWindow("Hidden_Winsock_Window",
"Winsock Window",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
CW_USEDEFAULT,
0,
NULL,
NULL,
m_hInstance,
NULL);
WNDCLASS *windowClass;
windowClass = new WNDCLASS;
windowClass->lpszClassName = "Hidden_Winsock_Window";
windowClass->style = CS_HREDRAW | CS_VREDRAW;
windowClass->lpfnWndProc = MsgRouter;
windowClass->cbClsExtra = 0;
windowClass->cbWndExtra = 0;
windowClass->hInstance = m_hInstance;
windowClass->hIcon = NULL;
windowClass->hCursor = NULL;
windowClass->hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
windowClass->lpszMenuName = NULL;
::RegisterClass(windowClass);
WSAAsyncSelect(theSocket, Window, WM_WINSOCK, FD_READ | FD_WRITE | FD_CONNECT | FD_ACCEPT | FD_CLOSE);
bind(theSocket, (LPSOCKADDR)&clientInfo, sizeof(clientInfo));
LRESULT CTest2Dlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
if ((message == WM_WINSOCK))
.....
return CDialog::WindowProc(message, wParam, lParam);
}
LRESULT CALLBACK CTest2Dlg::MsgRouter(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
CTest2Dlg* pWindow = (CTest2Dlg*)GetWindowLong( hWnd, GWL_USERDATA );
return pWindow->WindowProc(message, wParam, lParam);
}
</code>
Questions here~
Q1)
I dont know whether my method is corret. I would be much appreciated if you can give me advice~
1) call WSAasynselect
2) create hWnd window
3) route the WindowProc function (as it is a member function in a class)
4) register the window
Q2)
Is there any simple method to do the same task?
Q3)
I have found that the program does not work (although it is OK to be compiled and executed)
WindowProc seems cannot catch the message and go into the loop
Is there any errors in my code?
Thank you very much~~
modified on Friday, January 04, 2008 10:51:16 AM
|
|
|
|
|
You already have a window and therefore an HWND in CTest2Dlg so you don't need to create the other window. Try making that change and see what happens.
|
|
|
|
|
IC...
But how can I call or obtain the HWND in the Class CTest2Dlg??
or in other words, is there a command for that???
<code>
HWND window = ???();
WSAAsyncSelect(theSocket, window, WM_WINSOCK, FD_READ | FD_WRITE | FD_CONNECT | FD_ACCEPT | FD_CLOSE);
</code>
|
|
|
|
|