|
Let me try to actually answer the subject of ou post...
That function dates back to 16-bit Windows, and my guess is that since only FAT-style 8.3 filenames were supported, Win32 inherited that behavior.
Also, note that the GetModuleFileName(...) function is one of the few that is capable of returning filepaths longer than MAX_PATH , so do not assume that MAX_PATH is always going to be long enough...
Peace!
-=- James If you think it costs a lot to do it right, just wait until you find out how much it costs to do it wrong! Avoid driving a vehicle taller than you and remember that Professional Driver on Closed Course does not mean your Dumb Ass on a Public Road! DeleteFXPFiles & CheckFavorites (Please rate this post!)
|
|
|
|
|
Hi!
Does somebody know, what I have to do, when there is a .rtf-File which should be converted to a WinHelp-File? I don't have a .cnt but a .hpj-File.
Thanks a lot, Hanno
|
|
|
|
|
You can open the Help Workshop tool provided with VS 6.0
In the help of Help workshop you can get the step by step procedure for developing the winhelp file.
Knock out "T" from CAN'T
You 'CAN' if you think you 'CAN'
|
|
|
|
|
As it happens, the plans for my next project is to create a HTMLhelp helper which would be able to do just this. As an alternative for now, you could open the file with MS word and save it as a HTML file, then compile it with the HTMLhelp utility. The problem with this is the HTML files are very bloated, so you might want to edit out all the nonsense with a text editor.
-- modified at 8:11 Monday 10th April, 2006
Sorry, I misread the title of your post as HELP-File whereas HTMLhelp actualy creates .chm files.
|
|
|
|
|
Hi,
can anyone plz tell me what may be the error ???
private:
CCreateDlg m_dCreateDlg; // error
CStatusDlg m_dStatusDlg;
Compiling...
UpdateDlg.cpp
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2146: syntax error : missing ';' before identifier 'm_dCreateDlg'
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'CCreateDlg' : missing storage-class or type specifiers
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'm_dCreateDlg' : missing storage-class or type specifiers
Error executing cl.exe.
DesktopSearch.exe - 3 error(s), 0 warning(s)
|
|
|
|
|
you forgot to #include the header which contains the definition of the CCreateDlg ...
|
|
|
|
|
// UpdateDlg.cpp : implementation file
//
#include "StatusDlg.h"
#include "stdafx.h"
#include "DesktopSearch.h"
#include "CreateDlg.h"
#include "UpdateDlg.h"
#include "FoldersDialog.h"
I have added CreateDlg.h but still i am getting the same error
|
|
|
|
|
read my other answer...
you included the headers in the wrong file
|
|
|
|
|
Have you included the CreateDlg.h in you UpdateDlg.cpp file..??
if not then include it and try to bulid the application
CreateDlg.h file having the class definition of CCreateDlg class
Knock out "T" from CAN'T
You 'CAN' if you think you 'CAN'
|
|
|
|
|
// UpdateDlg.cpp : implementation file
//
#include "StatusDlg.h"
#include "stdafx.h"
#include "DesktopSearch.h"
#include "CreateDlg.h"
#include "UpdateDlg.h"
#include "FoldersDialog.h"
I have added CreateDlg.h but still i am getting the same error
|
|
|
|
|
you didn't read the errors properly :
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54)
you have to #include "CreateDlg.h" in the UpdateDlg.h !
one last thing :
move the "stdafx.h" include at the top of all other includes to avoid compilation problems due to the use of precompiled header.
-- modified at 8:12 Monday 10th April, 2006
|
|
|
|
|
UpdateDlg.h
#include "StatusDlg.h" // Added by ClassView
#include "CreateDlg.h" // Added by ClassView
#include CreateDlg.h is add in UpdateDlg.h also but still i am getting error
-------------------Configuration: DesktopSearch - Win32 Debug--------------------
Compiling...
UpdateDlg.cpp
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2146: syntax error : missing ';' before identifier 'm_dCreateDlg'
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'CCreateDlg' : missing storage-class or type specifiers
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'm_dCreateDlg' : missing storage-class or type specifiers
Error executing cl.exe.
DesktopSearch.exe - 3 error(s), 0 warning(s)
|
|
|
|
|
Hi ,
just wondering :
Are you sure that your class's name is CCreateDlg and not CreateDlg(when creating a class with 'C' as a first letter - the class wizard , from some reason does not add the prefix 'C' to the claas name... ).
Regards,
Eli
|
|
|
|
|
you're wrong eli.
the class wizard removes the leading C to the file names containing the definition and the implementation of the class beeing created, not directly on the class name.
moreover, look at the errors returned by the compiler :
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'CCreateDlg' : missing storage-class or type specifiers
yes, the class is effectively CCreateDlg
|
|
|
|
|
Hi v2.0.
You are right
I didn't see that he included the CCreateDlg header file in the Updatedlg implementation file and NOT in the UpdateDlg header file.
About the class wizard - for some reason , in my projects , the class wizard removes the leading C from the class name as well.
With best regards,
Eli
|
|
|
|
|
// UpdateDlg.cpp : implementation file
//
#include "stdafx.h"
#include "DesktopSearch.h"
#include "StatusDlg.h"
#include "CreateDlg.h"
#include "UpdateDlg.h"
#include "FoldersDialog.h"
----------------------------------
//UpdateDlg.h file
#if !defined(AFX_UPDATEDLG_H__440FE7B3_AA09_4A4C_8F1B_6E86EAE82E27__INCLUDED_)
#define AFX_UPDATEDLG_H__440FE7B3_AA09_4A4C_8F1B_6E86EAE82E27__INCLUDED_
#include "StatusDlg.h" // Added by ClassView
#include "CreateDlg.h" // Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// UpdateDlg.h : header file
//
----------------------------------------------------
UpdateDlg.h
private:
CCreateDlg m_dCreateDlg;//error
CStatusDlg m_dStatusDlg;
----------------------------------------------
--------------------Configuration: DesktopSearch - Win32 Debug--------------------
Compiling...
UpdateDlg.cpp
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2146: syntax error : missing ';' before identifier 'm_dCreateDlg'
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'CCreateDlg' : missing storage-class or type specifiers
d:\parichay\desktopsearch\desktopsearch\updatedlg.h(54) : error C2501: 'm_dCreateDlg' : missing storage-class or type specifiers
Error executing cl.exe.
DesktopSearch.exe - 3 error(s), 0 warning(s)
|
|
|
|
|
Do you realy have a sub directory called desktopsearch inside the directory with the same name?
|
|
|
|
|
I think the error is because you are cross-including files; I mean including fileA.h in fileB.h and fileB.h in fileA.h etc. You could just declare the class like:
class CCreateDlg;
Then declare a pointer:
CCreateDlg* m_pDlg;
etc.
this is this.
|
|
|
|
|
Thank u very much its working.
|
|
|
|
|
Hi,
i have new button on sigle click i want a dialog window to open i have declared variables as follows..
can anyone help to solve this problem..??
UpdateDlg.h
#include "StatusDlg.h" // Added by ClassView
#include "CreateDlg.h" // Added by ClassView
private:
CStatusDlg m_dStatusDlg;
class CCreateDlg;
//Then declare a pointer:
CCreateDlg *m_dCreateDlg;
---------------------
// UpdateDlg.cpp : implementation file
//
#include "stdafx.h"
#include "DesktopSearch.h"
#include "StatusDlg.h"
#include "CreateDlg.h"
#include "UpdateDlg.h"
#include "FoldersDialog.h"
void CUpdateDlg::OnNew()
{
// TODO: Add your control notification handler code here
m_dCreateDlg.DoModal();
}
---------------------------------------------------------------
--------------------Configuration: DesktopSearch - Win32 Debug--------------------
Compiling...
UpdateDlg.cpp
D:\Parichay\DesktopSearch\DesktopSearch\UpdateDlg.cpp(182) : error C2228: left of '.DoModal' must have class/struct/union type
Error executing cl.exe.
DesktopSearch.exe - 1 error(s), 0 warning(s)
|
|
|
|
|
I don't think you are very familiar with pointers and their uses. Using the pointer to declare the variable would mean that you have to give it memory by using the new operator. Then create the dialog using Create(...) then show the dialog using ShowWindow(...) .
This could be the code:
class CCreateDlg;<br />
CCreateDlg *m_dCreateDlg;
Now on button-click:
m_dCreateDlg = new CCreateDlg();<br />
m_dCreateDlg->Create(IDD_WHATEVER);
m_dCreateDlg->ShowWindow(SW_SHOW);
This would create a modeless dialog.
Note that this would give memory leaks if you do not dispose if off correctly. And if you want to re-use the pointer to create the dialog again, there could be problems.
Another way would be:
m_dCreateDlg = new CCreateDlg;<br />
m_dCreateDlg->DoModal();
this is this.
|
|
|
|
|
Hi all,
In my MDI application, when I call printpreview CView::OnFilePrintPreview(..), I am getting an assertion in CDialogBar::Create(..) in Static Libary build. It works fine in Shared Library version.
Project Settings:
********************
C/C++ Tab:
Category: Code generation
Use Runtime library: Multi-threaded
I've tried both Debug & Release with the above settings.
What's wrong with this?
Regards,
Sarvan AL
|
|
|
|
|
hi,how to use a third party dll in a specific project, and
what r the things i need to know while using third party Dll in my project?
krishna
|
|
|
|
|
You can import those DLLs in your application
Knock out "T" from CAN'T
You 'CAN' if you think you 'CAN'
|
|
|
|
|
Checking to see if anyone as any good comment to this scenario...
Using VS2005 to convert a server app to 64 bit. Running it on a Xeon ~3 GHz with 2 GB RAM etc. Since it is Xeon, we are talking EM64T and not AMD which might be the cause of this strange result:
In debug compilation, x64 wins with 30%
In release build, x86 wins with about 10% which seems pretty odd but there's nothing I can do about it.
I've tried to check just about any project configuration option I can possibly think of, but the same result. Obviously something is different between release and debug, but is it VS2005 or am I missing something? The same project config in all cases too. Could it be that VS2005 optimizes it's release code for AMD64 and that EM64T is different is the cause of the difference?
TIA
|
|
|
|