|
This seems to be something that's too simple to find an answer to, but it's starting to annoy me. All I know about C++ is what I've picked up myself, and I've never figure it out.
What's the difference between the types of include statements in C++? There's <thing>, <thing.h>, "thing.h", "c:\code\thing.h" etc. What's the difference? I know there's a difference, because changing the type has an effect on compiling.
Additionally, say I have a whole bunch of header files in a folder separate from where I'm working. Is there a way to set an environment variable or something so I don't have to type in the path to each one in its include statement?
Thanks for the help.
|
|
|
|
|
The only difference is where the file is included from.
#include "thing.h" - pick up thing.h from current directory
#include "c:\code\thing.h" - pick up thing.h from c:\code\ only (incidentally, this is really bad style - don't do this)
And the one you didn't specify:
#include <thing.h> - pick up thing.h from the include path
The include path is what you need to change to allow header files in a different directory to be found, without hardcoding the path (like the 'c:\code\thing.h' above).
How you change the include path depends on what compiler you are using, but if its VisualStudio then it should be pretty straightforward and you should look in the project settings.
You can have any number of include paths, and the compiler will look in each directory in turn. Make sure you don't have any duplicate headers otherwise you could confuse both yourself and the compiler!
|
|
|
|
|
Buy any good book on the language - a good investment.
Personally I have Herb Schildt's C++ Complete Reference.
Elaine
The tigress is here
|
|
|
|
|
I'm at that level where the beginner's books don't help and the reference guides are over my head. There's not much middle ground.
|
|
|
|
|
I display a dialog box when double clicking in my ActiveX control.
It works fine. But When try to move the dialog box by pressing on the title bar it hangs. Why ? Anyone can help me?
this is the code
where setProperty just passes an object address. in the dialog box class i have a pointer to that. it just asign to that.
void CImgAnnCtrl::OnLButtonDblClk(UINT nFlags, CPoint point)
{
propertyBox box;
box.SetProperty(&m_TmpProperties);
if(box.DoModal()==IDOK)
{
/// just some calculations
}
}
|
|
|
|
|
Try setting ooyur AciveX as parent for the dialog.. Maybe that will help.
propertyBox box(this);
|
|
|
|
|
i tried it but it hangs when i touch the title bar
|
|
|
|
|
The only thing I can think to try, without seeing if the dialog box is doing something strange, is to change changing the parent of the dialog box.
You can try the parent of the ActiveX control:
this->GetParent()
and if that does not work, try the desktop window
GetDesktopWindow()
|
|
|
|
|
Did you find a solution for this problem. I have the exact same behavior here. Everything works fine until I want to drag the window around. Then the dialog freezes and only keyboard navigation is possible.
I would really appreciate some hints!
Regards, mykel
If they give you lined paper, write the other way!
|
|
|
|
|
for all lost souls check this[^] thread.
regards,
mykel
If they give you lined paper, write the other way!
|
|
|
|
|
Dear All!
I'm doing program with MFC(Single Documents). I have a form. Now i want that when this form is running, it call a funtion in ---view Class. ---view Class called form Class.
Help me! Thank you!
|
|
|
|
|
CFrameWnd *pFrame;
pFrame = (CFrameWnd *)AfxGetApp()->m_pMainWnd;
CMyView *pView = (CMyView *) pChild->GetActiveView();
pViev->MyFun();
Where MyFun is your fun in View class.
Have a nice day
|
|
|
|
|
I can't wait to port my app to 64bit but it's in MFC! Will vs2005 support MFC's move to 64bit or is it not even an issue to worry about?
|
|
|
|
|
|
Hi all,
I seek to find a way to manage account logins and status in windows XP.
I mostly need to retreive the Administrator flag of the current user.
i also need to change the windows user to another when neaded.
the user will need to enter the username and password to change his user status.
I found a lod of code samples in c# c++.net and j# but i must code it in c++.
if someone can only give me a path to look to, I would very appreciate
thanks in advance.
|
|
|
|
|
I have been able to create tooltips for static controls. Now I am trying to create a tooltip for a toolbar button. I have created a toolbar button with the following code:
<br />
TBBUTTON Button;<br />
<br />
TCHAR* pButStatsCaption = _T("Get Stats!");<br />
int iIndex = ::SendMessage(m_hWnd, TB_ADDSTRING, 0, (LPARAM)pButStatsCaption);<br />
Button.idCommand = IDM_GETSTATS;<br />
Button.fsState = TBSTATE_ENABLED;<br />
Button.fsStyle = TBSTYLE_BUTTON | TBSTYLE_AUTOSIZE;<br />
Button.dwData = 0;<br />
Button.iString = iIndex;<br />
Button.iBitmap = 1;<br />
I then create a tooltip with:
<br />
hwndTip = CreateWindow(TOOLTIPS_CLASS, TEXT(""), WS_POPUP | TTS_ALWAYSTIP, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, (HMENU)NULL, NULL, NULL);<br />
Finally, I create a tool with:
<br />
TOOLINFO toolInfot<br />
<br />
toolInfo.cbSize = sizeof( TOOLINFO );<br />
toolInfo.uFlags = TTF_IDISHWND | TTF_SUBCLASS;<br />
toolInfo.hwnd = m_hWnd;<br />
toolInfo.uId = IDM_GETSTATS;<br />
toolInfo.hinst = NULL;<br />
toolInfo.lpszText = "Testing 1 2 3";<br />
toolInfo.lParam = NULL;<br />
::SendMessage(hwndTip, TTM_ADDTOOL, 0, (LPARAM) (LPTOOLINFO) &toolInfo);<br />
However, nothing works. Can anyone please help? Thanks in advance.
|
|
|
|
|
I have been using Visual Studio .Net to develop Windows applications, but was thinking of using Web Pages as part of the GUI; i.e. via a Browser.
I have a general question.
Is it possible to link a Web Browser and a Windows MFC application such that the Browser will request data (Pages etc) but the Windows aplication can share/use this data to record/log data. Or could the Browser be an integral part of the MFC application doing the communications between other computers.
Currently I use MFC to do the application, but would like to use Web pages for the GUI part, I think it might be easier? The application runs scripts, displays data from other PC's etc hence the need (I think) to retain the MFC application.
The Web Server (which may be embedded in the application) will be on any computer that we require data from.
I dont know if this is the correct forum, but any comments suggestions please.
Graham.
grahamfff
|
|
|
|
|
|
|
Hello,
I want to create an ini file for a SDI project I am working on. At some point I think I need to use:
AfxGetApp()->WriteProfileString(szSection, szWindowPos, szBuffer);
to write to the file. How do I create/name the ini file in the Windows folder?
I will also need to read from it. I want to store the values of all my varibles in the doc file in that folder, when the app is closed.
Thanks.
Jerry
|
|
|
|
|
You can use WritePrivateProfileString and ReadPrivateProfileString to go back and forth from an INI file.
Unless every user of your program is going to be an administrator, I would not read/write to an INI file in the WINDOWS folder.
Better to select a folder ALL users would have read/write access to.
|
|
|
|
|
I am trying to open a file stream to read a binary file.
The open command is:
ifstream file;
file.open((char*)str , ios::in|ios::binary);
...
char c;
file>>c;
It seems to work fine EXCEPT on some specific values such as decimal 12.
It drives me crazy.
Does anyone know how to do it right?
Keep it simple
|
|
|
|
|
What is the exact error you are getting ?
Can you explain a bit
Regards
Tarundeep Singh Kalra
************************
www.tarunsadhana.com
************************
All men die. Not all men really live”. - “Braveheart”, 1995
|
|
|
|
|
I am not getting an error.
The stream seems to skip some bytes in the file.
Thanks
Keep it simple
|
|
|
|
|
How are you verifying that values such as decimal 12 are not working?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|