|
According to your example, the m_iMaxClmTextSize data member is declared in class A, therefore definition must be:
// In A.cpp
const int A::m_iMaxClmTextSize = 10000;
and the usage
// In B.cpp
#include "A.h"
void B::MyFunc()
{
int MyArr[A::m_iMaxClmTextSize]; // Will compile
}
Serge
|
|
|
|
|
My mistake in the code sample. Where you see CClmListCtrl, it should have been A, which agrees with your post. CClmListCtrl is the real name of the class.
Neville Franks, Author of ED for Windows. Free Trial at www.getsoft.com
|
|
|
|
|
ActiveX keeps running after closing IE ?
Hi, all:
When browsing a web page which contains a CAB incluing DLLs and INF, the content within this CAB are downloaded and started to run. And it stops when IE is closed. How to keep the ActiveX running after closing IE?
My ActiveX is a DLL developed with VC ATL.
TIA
-gusd
|
|
|
|
|
Could somebody provide any idea ?
|
|
|
|
|
We are trying to add existing files from a project (C++ application) into a DLL. It gets to Generating code and produces about a hundred linker errors (LNK 2005 and LNK 2019). it says an object (or variable) is already defined in a libriry (the names of variables and libraries vary in errors).
When we tried to add those files to a new C++ application, that has an .exe file as an output, everything worked just fine.
any suggestions?
|
|
|
|
|
Hi all.
How i can recognize which thread launch current thread???
Thanks.
|
|
|
|
|
start reading up on "critical sections" "mutexes" "semaphores" etc
|
|
|
|
|
Dear All,
Need your help again...
I am developing an application in MFC VC++ Version 6.0 for Windows 2000.
Is there any API provided for finding whether the given path is a filename or folder
eg.
c:\rfolder\mfolder\xyz.txt
is a filename
C:\Documents and Settings\Administrator.TEST
is a folder
Feel free to ask any further queries in this regards,
Thanks
Rohit Dhamija
|
|
|
|
|
You can call GetFileAttributes and check if the returned DWORD has the FILE_ATTRIBUTE_DIRECTORY bit set.
(You may also want to take a look at GetFileAttributesEx ).
|
|
|
|
|
Thanks, you are great henchook.
Rohit
|
|
|
|
|
Hi !
I'm thinking about using a CVS (I know there is a free one), but I'm wondering how it is to work with such a tool...
We'll be 4 people working on the same project (but on different classes), with Visual Studio 6. I guess the files will be stored on the server, but what happens when I want to compile my class, and test the whole project ? Are the files built on the server and the executable run on the server as well, or do I have a copy of the files on my local disk ?
Does any one have some experience with such a tool ?
Thanks !
Jerome
|
|
|
|
|
I used PVCS for a brief time (11+ years ago), moved to Microsoft Delta (it was either free or extremely cheap at that time), and most recently Microsoft Visual SourceSafe.
The files are stored in a proprietary format. If you are working on a team environment, this will most likely be a common folder out on some server. Each person installs their own copy of the software, and opens the same VSS database (it's actually just an INI file that has all the goodies about the underlying hierarchy). A VSS admin will add users and assign rights as necessary.
Typically, you will check out files or a whole project (to your own development area), make the appropriate changes, and check everything back in. The next person that comes along will check out the files s/he needs, makes the appropriate changes, and checks everything back in. If a file is checked out, no other person can check out that file (note: there are exceptions to this).
I personally don't store DLL, EXE or HLP files in VSS as they can easily be rebuilt and storing binary files takes up a lot of space.
Once a file has two or more versions, only the delta is stored. This keeps disk usage to a minimum. If you had a 10KB file and added a few lines to it, VSS will only store those lines that were added, rather than making a duplicate copy of the original 10KB plus the added lines. Its "differences" feature is used to see what was changed between version A and version B of a file. You can retrieve any version of a file with ease.
In some situations, a file can be checked out by more than one person. When the second person goes to check the file back in, VSS will go through some sort of intelligent merge. I've never used this feature so I cannot elaborate on it.
|
|
|
|
|
Dear All,
I am developing an application in MFC VC++ Version 6.0 for Windows 2000. Is there any API provided for finding extension name from a given path (except using CFile class)
eg.
c:\rfolder\mfolder\xyz.txt
OR
C:\Documents and Settings\Administrator.TEST\Cookies.txt
In both the above cases txt is the extension name
Feel free to ask any further queries in this regards,
Thanks
Rohit Dhamija
|
|
|
|
|
splitpath()
"...Ability to type is not enough to become a Programmer. Unless you type in VB. But then again you have to type really fast..."
Me
|
|
|
|
|
|
Dear friend,
splitpath solved my purpose,That was very useful.
Thanks a lot.
Rohit
|
|
|
|
|
How about searching the given string(file path) for the last occurrence of char ".", and anything on right side of that "." is considered the file extension?
|
|
|
|
|
Dear Abin,
How can you tell conclude that
C:\Documents and Settings\Administrator.DOMAIN
is a folder name or a file name from your algo ????
(Its a folder name having . on right side )
.............
I found a method
if(FILE_ATTRIBUTE_DIRECTORY == GetFileAttributes("c:\\Documents and Settings\\Administrator.TEST"))
{
cout<<"folder";
}
else
cout<<"file";
..............
Rohit
|
|
|
|
|
uh oh... Yeah your right.. hehe. But does "splitpath" work in this case?
|
|
|
|
|
Hi,
Yes abin,
I used _splitpath to find extension like this
char ext[MAX_EXT];
if(FILE_ATTRIBUTE_DIRECTORY == GetFileAttributes(buf.FileName))
/*buf.filename may contain file or folder, i donot know in advance*/
{
......//folder
....
}
else
{
//file
_splitpath( buf.FileName, NULL, NULL, NULL, ext );
//ext will contain the extension name
}
I suppose this is the correct way..Please send your useful suggestions .
Rohit
|
|
|
|
|
I have a VC++ Dialog application that creates a COM object and also spawns a thread using the AfxBeginThread Call.
from within my thread I do a PostMessage to my main thread to perform a function of the com object which usually crashes from within the thread . My code works perfect in the debug configuration
When i wanted to build the release version . My code is crashing after the point where I perfom POstmessage . 7 in 10 times my code crashes , remaining 3 times it works as expected . I really am not able to figure out what the error is . I have turned off optimizations(disable debug)for the release and still nothing is different .
The exact windows message while crashing is this :
the instruction at "0x(some address) " referenced memory at "0x(some address)". the memory could not be written !
Is there a way I can trap some error in the debug version . My debug version reports of one first chance exception . I really couldnt figure why that came ?
If someone has had experience with such cases it would be great if u can advise .
Thanks
|
|
|
|
|
Are you linking a debug library with your release build?
Matt Newman Sonork: 100:11179
"Whoa, that ruled! What function key do I gotta press to get that to happen again?" - Strong Bad
|
|
|
|
|
no i am doing it seperately . it crashes during the release build
|
|
|
|
|
Sounds like an uninitialized variable or stepping outside the bounds of an array somewhere, particularly since it seems nondeterministic.
- Mike
|
|
|
|
|
How did you handle the message in your main window? Some requirements differ in debug mode than in release mode. For example:
#define WM_MY_MSG WM_APP + 1000
class CMyWindow : public CWhatever
{
protected:
afx_msg LRESULT OnMyMsg(WPARAM wParam, LPARAM lParam);
};</code>
Please let us know if this solves your problem.
|
|
|
|