|
GOD DAMN I'M SO HAPPY NOW!
THANK YOU! It works now!
------------------------------
©0d3 ©®4©k3® - That's me!
------------------------------
|
|
|
|
|
Any sample on using CreateWindow API from c# ? I’m aware of “MessageBox” sample on MSDN but I’ve no idea on how to retrieve HWND of Form and Instance handle. I’m trying to put together code to use virtual listview. virtual listview is available in SDK not with .Net. Any idea would be truly appreciated.
Thanks
|
|
|
|
|
I am using CRichEditView and have managed to make it so that the urls in the view automatically become links using EM_AUTOURLDETECT but i do not know how to capture the event of clicking on the link. Can anyone help....i think it has something to do with EN_LINK
==================================================
The Eclypse
|
|
|
|
|
I am making a DLL, which contains classes and stuff for my exe (..the exe has not been made yet) when i compile the dll in debug mode, it compiles no problem, but when i attempt to compile in release mode, it gives me the following error during linking:
Linking...
LINK : error : Internal error during ReadSymbolTable
ExceptionCode = C0000005
ExceptionFlags = 00000000
ExceptionAddress = 004623F2
NumberParameters = 00000002
ExceptionInformation[ 0] = 00000000
ExceptionInformation[ 1] = 00000008
CONTEXT:
Eax = 022A06A0 Esp = 0012E6D8
Ebx = 00000002 Ebp = 013A0424
Ecx = 022A06A0 Esi = 02290C64
Edx = 00000000 Edi = 02290C64
Eip = 004623F2 EFlags = 00010246
SegCs = 0000001B SegDs = 00000023
SegSs = 00000023 SegEs = 00000023
SegFs = 00000038 SegGs = 00000000
Dr0 = 0012E6D8 Dr3 = 00000002
Dr1 = 013A0424 Dr6 = 022A06A0
Dr2 = 00000000 Dr7 = 00000000
Error executing link.exe.
Tool execution canceled by user.
Does anyone know why?
==================================================
The Eclypse
|
|
|
|
|
Hi.
Is there an advantage to using dynamic binding instead of static binding?
I have both Deitel & Deitel C++ How to Program and Stroustrup's Special Edition. I read all of the first book and finished chapter fifteen of Stroustrup. So I understand virtual functions and virtual base. However, I am not to the point where I can implement virtual functions and virtual base without asking: How do you implement them effectively?
For example, "virtual" only works for pointer and reference. That is completely conceivable. However, it seems you have to declare an object of a derived class and then *cast* a new class from the base class to the derive class just to get it working right.
-----------------
classDerived cDerived = new classDerived;
classBase *cBase = &cDerived;
-----------------
The example above comes straight from Deitel & Deitel. So everything looks okay. What is the point of declaring two separate classes? I understand that the use of "virtual," but I do not understand the performance of "virtual" if you have to declare an object of the derived class and an object of the base class. Under what specific situation do you implement dynamic binding? Please be very specific because I found that neither Deitel & Deitel nor Stroustrup give a convincing example of dynamic binding.
Lastly, I too want to implement dynimic binding if it is possible to declare *one* object of either the base class or the derived class. The following is *not correct*:
------------------------
classBase *cDynamic = new classDerived
------------------------
In other words, *virtual* would be great if there is a way to use it without having to declare two seperate classes like the example from Deitel & Deitel.
Thanks,
Kuphryn
|
|
|
|
|
<small><b>kuphryn wrote:
</b></small><i>Lastly, I too want to implement dynimic binding if it is possible to declare *one* object of either the base class or the derived class. The following is *not correct*:
------------------------
classBase *cDynamic = new classDerived
------------------------
In other words, *virtual* would be great if there is a way to use it without having to declare two seperate classes like the example from Deitel & Deitel.</i>
There is no reason you cannot do this, I did it extensively in a paint package I wrote. I created a virtual base class called CTool, or something, and then created derived classes like CToolFill, CToolRectangle, etc. My Mainframe had a member CTool*, and when I changed tools I would delete it, and make it a new CToolFill, or whatever tool was selected.
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
<Center><A href = "http://www.sonork.com" target = "_Blank">Sonork</A> ID 100.10002:MeanManOz</Center><Center>I live in <U><B>Bob's HungOut</B></U> now</center>
|
|
|
|
|
My original concern was not with the use of virtual function. I basically feared resource loss and performance reduction because using virtual function requires declaration of multiple classes, including one base and at least one derived. null_pointer made a good point at GameDev forums that a pointer takes up very little resource. I believe he implied that even thought virtual requires declaration of multiple class objects, doing so through pointer takes up few resources.
I see the big picture is sometimes "virtual" is a necessity. It is not an option in some cases where the program has no way of knowing which function you are implying.
So the question came down to the performance of static binding and dynamic binding. If there is no performance difference, then I think it is better to just use dynamic binding with inheritance.
Kuphryn
|
|
|
|
|
With this:
classDerived cDerived = new classDerived;
classBase *cBase = &cDerived;
You are creating only one object (with new). The other is a pointer variable that points to the already created object.
Besides that, the following:
classBase *cDynamic = new classDerived
works fine. Is the same idea than before, but having one object and one pointer instead of two pointers, and is the way that is usually used.
|
|
|
|
|
|
Hi guys,
how can draw graphs in vc++ like pie chart or something else ? Is there a class for that stuff ???
regards
Sonu
|
|
|
|
|
|
Is it possible to get the HTML-Code from the Site wich is shown in CHtmlView and to use it in the program (extracting Links etc.) or to change the shown Site dynamically out of the Mfc-program.
shojo is back
|
|
|
|
|
There are many ways to do it. If you want to have a simple text with ALL code on the page, you can use the TextRange of tag.
But if you are processing the HTML, I mean extracting links, images, tables, etc., I suggest to use MSHTML library, it has good interfaces that do parsing for you.
Too big thing to discuss, so here is the link that talks about MSHTML on MSDN Web site:
MSHTML reference
Philip Patrick
"Two beer or not two beer?" <shakesbeer>
Web-site: www.saintopatrick.com
|
|
|
|
|
I'm trying to call a function from more then 1 project .
I do the following:
in one project i wrote:
int ChosenPort;
extern int GetPort(){return ChosenPort;}
from another i try to call the function:
int ChosenPort;
ChosenPort=GetPort();
I get a linking error:
error LNK2001: unresolved external symbol _GetPort
please help me if you can.
Thanks heaps.
Aviv.
avivhal
|
|
|
|
|
you have many options. here are a few:
1. copy the source files (and any appropriate header files) from the project where "GetPort" currently lives into the new project. pro: it's easy. con: duplication of source code.
2. put the files for GetPort into a new static library project and have each of your projects link to that library. pro: source for GetPort is in one place. con: takes a few minutes to set up.
3. put the files for GetPort into a new DLL project and have each of your projects use that DLL. pro: source for GetPort is in one place. con: takes a few minutes to set up; you have to ship a DLL.
i always go for option 2.
-c
Smaller Animals Software, Inc.
|
|
|
|
|
I can't load a function from my apps exe from one of my apps DLs:
(This code is from one article here on CodeProject I think...)
// I think it just to do the same when loading a function from a DLL.. but noup
static HINSTANCE hinstDLL;
typedef BOOL (CALLBACK *inshook)();
inshook instkbhook;
hinstDLL = LoadLibrary((LPCTSTR) "hodll.dll");
instkbhook = (inshook)GetProcAddress(hinstDLL, "installhook");
instkbhook();
The error is that Explorer crash... how to load a function from my exe?
It's a global function
------------------------------
©0d3 ©®4©k3® - That's me!
------------------------------
|
|
|
|
|
1. Did you put the DLL same dir as the EXE
( If the explorer crashes you must be useing WinMe or earlier...)?
Did you exported it right?
DLL:
extern "C" {
void myFunc(void)
{
/*Function body*/
}
}/*extern "C" closing clauses*/
3. Check 'LoadLibrary()' and 'GetProcAddress()' return value
If it's 'NULL' The DLL/Function isn't found
Good Luck
--BlackSmith--
"With the help of all mighty", 2001, Me.
|
|
|
|
|
The MSDN suggested:
The DLL:
********
#ifndef _INCLUDED_MYCLASS_H_
#define _INCLUDED_MYCLASS_H_
#undef AFX_DATA
#define AFX_DATA __declspec(dllexport)
class CMyClass : public CObject
{
DECLARE_MESSAGE_MAP()
//Class definition...
//
//
};
#undef AFX_DATA
#define AFX_DATA
#endif//_INCLUDED_MYCLASS_H_
************************************************************
In the my app:
**************
#ifndef _INCLUDED_MYCLASS_H_
#define _INCLUDED_MYCLASS_H_
#undef AFX_DATA
#define AFX_DATA __declspec(dllimport)
class CMyClass : public CObject
{
DECLARE_MESSAGE_MAP()
//Class definition...
//
//
};
#undef AFX_DATA
#define AFX_DATA
#endif//_INCLUDED_MYCLASS_H_
The DLL compiles fine, but my app gets unresoulved external about all
used methods. I assume, this for not writing "class AFX_EXT_CLASS MyClass..."
but when I do (DLL or my app) I get:
"error C2487: 'messageMap' : member of dll interface class may not be declared with dll interface"
What todo? Please be specific... 10X!
--BlackSmith--
"With the help of all mighty", 2001, Me.
|
|
|
|
|
I use the AFX_EXT_CLASS and it exports the class fine.
==================================================
The Eclypse
|
|
|
|
|
I have an MFC dialog application and in its properties i assign it a menu. I thought "wow this is easy, i just make a menu and stick it on the dialog, i dont even have to write any code for it". But then i wanted to disable an item and found a problem. this is what i have:
void CMyDlg::OnUpdateMyItem(CCmdUI* pCmdUI)
{
pCmdUI->Enable(FALSE);
}
This disables the menuitem BUT! it doesn't show it disabled. It's like it does it in the background without redrawing the menu. Can anyone tell me how to work with the pointer and all so its updated correctly??
Thanks
(PS: i tried CMyDlg::DrawMenuBar(); , no effect)
Kuniva
|
|
|
|
|
You cannot use ON_UPDATE_COMMAND_UI in dialog. You should directly enable/disable menu items using CMenu class or use some tricks described in http://www.codeguru.com/dialog/index.shtml, CommandUI section.
|
|
|
|
|
UPDATE_COMMAND_UI doesn't work automagically in dialogs. You need to add a handler for the MFC message WM_KICKIDLE, and in that handler, call:
UpdateDialogControls(this, FALSE);
--Mike--
My really out-of-date homepage
Buffy's on. Gotta go, bye!
Sonork - 100.10414 AcidHelm
Big fan of Alyson Hannigan.
|
|
|
|
|
I tried to add the handler by clicking right on my dialog class and slecting Add Message Handler, but i cant seem to define "WM_KICKIDLE". How do i add a handler for a custom message like that?
Happy Newyearrrrrrrrrrrrrrrr!!!!!!!!!!!!!!!!!!!!! :p
Kuniva - Also a big Buffy fan, but mostly for Eliza Dushku (Faith)
|
|
|
|
|
With the good old GDI I have always used GetTextExtentPoint32() to get the width of a text string on the current DC.
Now I'm am playing around with Gdiplus::Graphics.DrawString(), but I can't find any function that tell me how many pixels my string is going to be (text width)
Any ideas?
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
You may have some success with the overloaded methods:
Gdiplus::Graphics::MeasureString(...) OR
Gdiplus::Graphics::MeasureDriverString(...)
/Andreas
|
|
|
|