|
I mainly use the painlib class as a DIB wrapper not as a DIB section. I have no need of a DIB handle, all blitting is performed through StretchDIBits.
I'll study DIBSection in MSDN it probably can help out. I already have all graphic libraries from that site and others: CXImage, CPicture, CImage, FreeImage, ImageMagick,... but studying all that stuff to find out which is the best only leads to the conclusion that each of them has quality and drawbacks.
I bet that the one which can handle properly a clipboard copy WITH alpha channel will be the one I prefer )
Thank you for your support
Yarp
|
|
|
|
|
I'm thinking that the DIBSection will allow you to use the clipboard by passing in the handle, the beauty of a DIBSection is it combines the best of a DDB and a DIB.
Good luck.
Christian
I have come to clean zee pooollll. - Michael Martin Dec 30, 2001
Sonork ID 100.10002:MeanManOzI live in Bob's HungOut now
|
|
|
|
|
I like the term "the beauty of" this gives me the will to try it on.
Thank you
Yarp
|
|
|
|
|
I have dialog base application with MFC.
I want task manager of win2000 to show my application,in
"processes" ,not in "applications".
Is there anyway for it?
|
|
|
|
|
You should make your dialog toolbox window:
ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW, 0);
Good Luck,
Serge
|
|
|
|
|
I put this line in Oninitdialog() but it show the application in both
"processec" and "application"???
|
|
|
|
|
thats because an application needs a process in order to work.
the application list is just the top level programs from the process list.
// Rock
|
|
|
|
|
dear all,
i am using MSFlexgrid control in my mdi application.
The problem is some times in ".rc" file there are
somuch coding("0x0000") is added autometically at flexgridcontrol defination .
Some times the file(".rc") size is reaching upto 30MB.
Please help me how to avoid this...
thanks.
anju
|
|
|
|
|
Flexgrid is more trouble than it's work - Chris Maunders grid control is heaps better & easier to use.
Christian
I have come to clean zee pooollll. - Michael Martin Dec 30, 2001
Sonork ID 100.10002:MeanManOzI live in Bob's HungOut now
|
|
|
|
|
Hello,
I have exactly the same problem and don't know why.
Everything was working well with my flexgrids when I saw my .RC file growing and growing each time I modified the dialog box having this flexgrid, and with it the time to save the ressources files to compile it and so on.
In fact, I think that size (in bytes) given beside the flexgrid control name suddenly becomes false (maybe after a resize of the flexgrid), and then the size doesn't match the initialization data part.
Then, each time you modify the dialog, and so resave its control properties, you degrade a little more the content of .rc file
You can delete some zeroes and make the number of hexa values correspond to the size, but I don't know :
- how is this size calculated (from the 'graphic' design we have done of flexgrid, from the number of columns, number of rows, etc) ?
- there are some non-zero values at the beginning and at the end of data, and between then a certain number of 0x0000, what do they represent, I guess we will find the columns titles, but for the rest ??
- if I delete and recreate the flexgrid, will the size and the initialization data be recreated correctly ?
I would like that Microsoft, not only takes my money, but takes this bug in account and correct it !!!!!!!
This product is expensive enough to receive a correct support from them, He Bill !!!
DD
|
|
|
|
|
I want write method that hook keyboard and return keyboard messages with
'ATL'.I know the solution with MFC,but in ATL what type should my method
return what attribute should it have?
|
|
|
|
|
I will look for this. I have it coded somewhere.
Email me to remind me at lynnphilmcgahan@msn.com;P
|
|
|
|
|
Here is reminder.
Thanks
|
|
|
|
|
Phil ,This is my email:
mazy82@hotmail.com
|
|
|
|
|
I've heard that on a unix system the code is reguarly updated by normal people, I'd like to know if i could get hold of a browsers source code for unix in C++ or for windows?
Mickey Finn
|
|
|
|
|
Not the best browser in the world, but the Linux boys like it and it has got full source code.
http://www.mozilla.org/
Michael
|
|
|
|
|
Hi i created a dll in visual basic 6 with one function!
public function beep()
msgbox "hello"
end sub
--------------------------------------------------------
ok, now how can i call the dll or function from visual c++ 6.
Please help me if you can.
|
|
|
|
|
need help please. been stuck with this problem for a long time
|
|
|
|
|
To begin with, I don't the exact answer but here are some things to look into a maybe get a hint.
First, run dumpbin /exports on your DLL. If you don't see beep listed as an export then you don't quite have it.
What I expect you to see is _beep. If you were to pass it arguments you would probably see "@4 or @8" following it. The reason being that I believe VB uses the _stdcall sequence nearly always.
Given the answers to these questions, you should be able to make the correct prototype header file for your library. As a first guess, I would use this prototype :
#define import __declspec(dllimport)
import void __stdcall beep(void);
Let us know what you find and how this works.
|
|
|
|
|
ok, i did the dump but i have never used that b4 so i have posted s acreenshot for you to look at the summary.
http://www.gobbets.com/dump.jpg
|
|
|
|
|
The beep function was not exported.
CLaW mentioned that VB does not create normal DLLs and your dumpbin screen tends to confirm this. It appears to me that you are SOL.
Sorry.
|
|
|
|
|
VB does not export normal DLLs, it creates COM DLLs.
These can not be used directly in C++ like a normal DLL, but you can invoke them just like any other COM object in C++.
Just keep your eye out for consuming COM objects in C++, especially COM DLLs
// Rock
|
|
|
|
|
How can I get SendMessage to work with a window that isnt in my program?
How would I tell it which winow handle to send to?
To get more of an idea what im doing...
class CWnd * Handle=FindWindow("AIM_CSignOnWnd",NULL);
SendMessage(WM_SETTEXT,0,(LPARAM)(LPCTSTR)SnArray[y])
Right now, all it does it make the Header of the current window equal to SnArray[y]... Im trying to get the window in AIM_CSignOnWnd to have that text sent into one of its message boxes. AIM_CSignOnWnd is a window completly outside of my program (part of AOL Instant Messenger)
There is a good possibility that i'm doing this in the completely wrong way, so point that out if you think so.
|
|
|
|
|
You can send messages to other processes with ::SendMessage(HWND Hand...)
but you can not send pointers to memory through messages (which is what you appear to be doing). this is because each process has its own memory chunk. your valid pointer in one process will point to junk in another process.
*edited to add:
The solution is to inject a thread into your target process, put a string in its memory, then return the pointer to your own application, where you can do further processing, and send the message with a valid pointer back into the target process.
// Rock
|
|
|
|
|
It sounds like you have made some of the required progress already. As your call to
CWnd * Handle=FindWindow("AIM_CSignOnWnd",NULL);
Is returning a valid pointer to the main window, from here, you can use this CWnd* pointer to get controls/windows on the main window. If you start up spy, you should be able to snoop the AOL window to find out the ID number of the window you want to set the text of, Once you have done that, you should be able to get a CWnd* pointer to it:
CWnd *pWindow = handle->GetDlgItem(id_of_control) ;
if (pWindow != NULL)
{
pWindow->SetWindowText("Some text") ;
}
I am not sure about how valid it is passing the string across, as you may need to mess around with memory in the system address space (which should be accessable from both applications).
Give it a try and see if it works.
Roger Allen
Sonork 100.10016
If I'm not breathing, I'm either dead or holding my breath.
|
|
|
|