|
I am creating my first MFC Extension DLL. Everything I have read so far said that it would be pretty easy but I have am having some problems.
I want to put a dialog in a DLL so multiple apps can use it. I created the DLL using AppWizard and used ClassWizard to create the CDialog class. I added AFX_EXT_CLASS to export the class. The DLL compiles fine.
Now I go over to the app and try to show the dialog. I enter the lib into the linker's input library list. I add the class' header file to the project, and I include the header in the file. I compile the app and I keep getting this error:
error C2065: 'IDD_FACILITY_CALENDAR_DIALOG' : undeclared identifier
IDD_FACILITY_CALENDAR_DIALOG being the dialog in the DLL
I am also using an OCX in the dialog that exist in the app already, and I am getting a Class redefinition on the wrapper files for the OCX.
Any ideas.
Thanks in advance.
***********************
Tony Fontenot
Recreational Solutions
tony@recsolutions.com
***********************
|
|
|
|
|
Your IDD_FACILITY_CALENDAR_DIALOG is defined in your DLL projects Resource.h file. This file is by default not included in your dialogs header, hence the undeclared identifier error. Either include your Resource.h in the dialog header, or remove the enum containing IDD_FACILITY_CALENDAR_DIALOG (IDD) from the header file. It's only used in the constructor. Use IDD_FACILITY_CALENDAR_DIALOG directly in the dialog cpp instead.
As for the OCX I don't know. Does your wrapper contain #ifndef s to protect the header?
|
|
|
|
|
I have included the resource.h into the dialog header. The DLL compiles fine. It is when I compile the app that i get the error. As for using the Dlg directly in the cpp, how do go about doing that?
Also I figured out the OCX problem, I just had to add the include statment before another one in the file.
Thanks for yoyr help.
***********************
Tony Fontenot
Recreational Solutions
tony@recsolutions.com
***********************
|
|
|
|
|
In your header, you have something like: enum { IDD = IDD_CALENDAR_DIALOG }; . This is where your problem is. Remove this line.
In your cpp-file, change
CCalendarDlg::CCalendarDlg(CWnd* pParent )
: CDialog(CCalendarDlg::IDD, pParent) to
CCalendarDlg::CCalendarDlg(CWnd* pParent )
: CDialog(IDD_CALENDAR_DIALOG, pParent) and your problems will be gone. Just note that you wont have the class wizards support if you decide to change the ID of your dialog from the resource editor. In this case you will have to change the identifier in the cpp yourself.
|
|
|
|
|
Hi,
I have an MFC applciation..
it has one class which uses COM to get history
of the system (internet history)..
But if i install it on some win95 machine that
module is not working.. does the machine require
some runtime environment and how do i deploy that
on that machine..
|
|
|
|
|
Does it use DCOM ? I believe DCOM needs to be installed on a W95 machine.
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
And you don't spend much time with the opposite sex working day and night, unless the pizza delivery person happens to be young, cute, single and female. I can assure you, I've consumed more than a programmer's allotment of pizza, and these conditions have never aligned. - Christopher Duncan - 18/04/2002
|
|
|
|
|
No!.. it does not uses DCOM..
|
|
|
|
|
you may be missing a file , file can be from IE or windows. first identify it.
you can use Dependancy Walker to see dependancies.
Gaurika Wijeratne. // www.gaurika.com
|
|
|
|
|
try to see if your code is compatible with the IE ver on the win95
|
|
|
|
|
Hi,
IS there any other product like
boundschecker which can be integrated
with vc++
|
|
|
|
|
|
Which company? Web site? and can i run it on Windows 98
|
|
|
|
|
Sorry, Rational...
I use BoundsChecker myself...
Regards
|
|
|
|
|
The problem is that i don't own BoundsChecker and neither
can i afford it right now.. so i was looking out for
an evaluation copy.. but i didn't get it newhere
|
|
|
|
|
I have BoundsChecker with crack. If you want, mail me ;0)
kourov@newmail.ru
|
|
|
|
|
Boundschecker is a very good product and deserves its price tag.
People who use cracks are only undermining the software industry. You should not be advocating it here or anywhere else.
Roger Allen
Sonork 100.10016
If I had a quote, it would be a very good one.
|
|
|
|
|
Boundschecker is a very good product and deserves its price tag.
Perhaps it does nowadays, but rewinding 5-6 years I'd say that Pure Atria Purify kicked ass with whatever was available, and still I use it for memory-related bug-hunting. After Rational bought them (IMO) all went to h*ll though.
I also think that "deserves its price tag" is up to the consumer of it, and if you just want to use it for some personal project it's probably way to expensive.
BoundsChecker still have some merits though:
1 - Old versions can be used to debug Win16 stuff (I've heard of the poor souls forced to do this).
2 - It can keep a "log" of windows (Win32) calls made, and what arguments was given/returned (or have they removed that also in the last years?).
|
|
|
|
|
Hi,
Can neone tell me where can i get the evaluation
copy of numega Boundschecker.. the website www.numega.com
does not provide link to d/l
|
|
|
|
|
I believe you need to contact a sales rep. That's how we got it anyway. Yeah, not very friendly of them not providing a downloadable demo. /
--------
all the modern things
have always existed
they've just been waiting
to come out
and multiply
and take over Björk, The Modern Things
|
|
|
|
|
But yesturday, i somehow found a link to downlaod a 14
day evaluation and the file it was d/ling
was dpp70.exe (was around 10MB)..
Ne idea..from where i can get it
|
|
|
|
|
Sameer Maggon wrote:
But yesturday, i somehow found a link to downlaod a 14
day evaluation and the file it was d/ling
was dpp70.exe (was around 10MB)..
Hey, why didn't you download it then?
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
I dunno how - I had the same experience, and I had to convince the sales rep we were a big enough company that we could afford and justify the expense before they would let us download it.
Christian
The tragedy of cyberspace - that so much can travel so far, and yet mean so little.
And you don't spend much time with the opposite sex working day and night, unless the pizza delivery person happens to be young, cute, single and female. I can assure you, I've consumed more than a programmer's allotment of pizza, and these conditions have never aligned. - Christopher Duncan - 18/04/2002
|
|
|
|
|
I plan to use Control+ <right mouse click> for global hotkey.
I use
registerhotkey(hwnd,1234,MOD_CONTROL,0x02)
but it doesn't work.
What's should I do ?
Thank you so much
|
|
|
|
|
meta wrote:
registerhotkey(hwnd,1234,MOD_CONTROL,0x02)
The 4th parameter is the keyboard virtual key code. By 0x02 are you expecting that to catch right-mouse clicks? If so, that wont work.
Nish
Check out last week's Code Project posting stats presentation from :-
http://www.busterboy.org/codeproject/
Feel free to make your comments.
|
|
|
|
|
registerhotkey(hwnd,1234,MOD_CONTROL,0x02)
It doesn't work when I press Control + <right mouse click > its application will open its context menu instead of send WM_HOTKEY to my application
What should I do ?
thank a lot
|
|
|
|