|
In the spirit of sharing information, how many member variables did this class have when the compiler error happened? How many did you have to remove?
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
I want to use ActiveX developed using vc++ in a windows service. Please help me how to do that.
|
|
|
|
|
Hello,
my app uses an external executable file (WinExec...) for doing certain operations.
My question is:
is there some way to "encapsulate" the external executable inside my application
without having to distribute two files?
Thanks,
Marco.
|
|
|
|
|
yes i tried this earlier like
include the executable as a resource within your application, before using that extract in to a temp folder.
Ninety-eight percent of the thrill comes from knowing that the thing you designed works, and works almost the way you expected it would. If that happens, part of you is in that machine.
|
|
|
|
|
Wonderful suggestion!
Can you be more precise about howto do this? (inclusion, extraction... I think I must somehow get the handle to the resource...)
Sorry, but I'm a starter...
Marco.
|
|
|
|
|
You can add any resource via the resource editor ( Right Mouse click > import)
and for extracting...look the code below
UINT uSizeOfDll;
DWORD dwSizeOfDllInBytes;
DWORD dwBytes = 28672; //size of my resource
try
{
HRSRC hRes;
hRes = (HRSRC)::FindResource(
NULL,
MAKEINTRESOURCE(IDR_DLL1),
"DLL");
if (hRes == NULL )
{
DWORD dwErr = GetLastError();
return FALSE;
}
HGLOBAL hGlobal;
hGlobal = :: LoadResource(NULL,
hRes //Res Handle
);
if (hGlobal == NULL)
{
DWORD dw = GetLastError();
return FALSE;
}
//lock the file into global Memory
char *lpMem;
lpMem = (char*)LockResource(hGlobal); //File Pointer
if (lpMem == NULL)
{
DWORD dw = GetLastError();
return FALSE;
}
HANDLE hFile;
hFile = (HANDLE)CreateFile(m_szDllPath, //#name
GENERIC_READ|GENERIC_WRITE,//#Access
FILE_SHARE_READ | FILE_SHARE_WRITE,//#share
NULL, //$ def Security
CREATE_ALWAYS,//creation disposition
FILE_ATTRIBUTE_NORMAL, //attr
NULL//# templateFile
);
if (INVALID_HANDLE_VALUE
== hFile)
{
return FALSE;
}
DWORD dwWrritten = 0;
int nRes =
::WriteFile
(hFile,
(char*)lpMem,
dwBytes,
&dwWrritten,
NULL);
if (nRes == 0 )
{
DWORD dw = GetLastError();
}
CloseHandle(hFile );//# close file handle
}catch(...)
{
return FALSE;
}
Ninety-eight percent of the thrill comes from knowing that the thing you designed works, and works almost the way you expected it would. If that happens, part of you is in that machine.
|
|
|
|
|
See if this article helps.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Hi guys
What I have to do to change de default directory in a SDI app when I click in the menu Open?
I want to control the directory where the Open dialog opens to select the file.
Thanks
Doc
|
|
|
|
|
Override the DocManager::DoPromptFileName() method. That is where the CFileDialog object lives.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Thanks David
Have I to do that, creating a new CMyDocManager class?
Doc
|
|
|
|
|
Derive your class from CDocManager just like you would any other:
class CMyDocManager : public CDocManager
{
public:
virtual BOOL DoPromptFileName(CString& fileName, UINT nIDSTitle, DWORD lFlags, BOOL bOpenFileDialog, CDocTemplate* pTemplate);
}; Add the following in InitInstance() before creating any doc templates:
m_pDocManager = new CMyDocManager;
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
A little more difficult thhan expected, (due to _AfxAppendFilterSuffix) but I finally reached my target.
Thanks a lot
Doc
|
|
|
|
|
Hi! I need help with a little problem. I'm using the cListCtrl and i was wondering if there's a way to resize the width of the listbox dynamically? I tried searching but only found topics on resizing column widths. Please help...Thanks a lotü
|
|
|
|
|
Since a CListCtrl is derived from CWnd , it can be resized using MoveWindow() .
CRect rectListCtrl;
m_myListCtrl.GetWindowRect (&rectListCtrl);
ScreenToClient (&rectListCtrl);
rectCtrl.right += 20;
m_myListCtrl.MoveWindow (&rectCtrl);
/ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
Ok thanks! But how do i get myListCtrl to behave like the main window? e.g. id i resize the window, my list should resize as well, and if i maximize my window the list should do the same. Given that the list occupies the whole window.....thanks againü
|
|
|
|
|
I've receive this error code when im trying to build the dll file. Does any know what is this error and how can i solve it? Thank you
best regards
Snowy
|
|
|
|
|
It's hard to say without looking at your source code, but the compiler is informing you that it encountered a semicolon (; ) when it was expecting something else. The error may be fixed by inserting the expected entity before the semicolon.
/ravi
My new year's resolution: 2048 x 1536
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
It looks like a misplaced comma. The compiler should have indicated what line is in error.
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow
|
|
|
|
|
Snippet with offending line and couple of lines before could help. Otherwise it is impossible to tell what it causing it.
It maybe a missing bracket or even macro. It can be undefined and defined differently elsewhere, causing compilation problems.
JohnCz
|
|
|
|
|
I have a problem. For 2 years i've been developing an application which someone else did before me (job thing), and someone else did before him...
Well. Everything is OK, but when I want to Browse Info (to see base classes etc) i get an error without any explanation. It only says:
Creating browse info file...
Error executing bscmake.exe.
***.exe - 1 error(s)
ANy ideas?
Love is the law, love under will.
|
|
|
|
|
please?
Love is the law, love under will.
|
|
|
|
|
Hello, everyone. I met a problem days ago. I used the webbrowser to play the powerpoint file. but when I set focus to the Webbrowser window which is playing powerpoint, I cannot get any key strokes even if in the thread message queue.
where's wrong? can anybody help me? Thanks very much!
|
|
|
|
|
Consider the following code snippet..f1,f2 and f3 are functions.
int f1(int,int);int f2();int f3();
here f3 is a library function,so i don't have access to it's internal code.
int a = f1(f2(),f3());
now,i want to stop execution of f2(and f1) if f3 returns a non zero value..how can i do this on the run i.e thru code ?
thanks in advance
|
|
|
|
|
Can't you simply do this:
int Return = f3();<br />
<br />
int a = 0;<br />
if (Return == 0)<br />
a = f1(f2(), Return);
|
|
|
|
|
yea it's possible but i was asked to do it without inserting any other statement than f1(f2(),f3())..i.e check should be after call to f1 is made but not in code of f3 since it is a library function.
|
|
|
|