|
Possibly he want to be sure.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Must be urgentzzz
|
|
|
|
|
But then he forgot: "plz plz help!"
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[Image resize DLL]
|
|
|
|
|
Could you give me first post answer, if posted?
|
|
|
|
|
As you should know there were answers to your original post [^] that gave at least hints for some of the required steps. What is the point in posting again and again the same list of questions?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[Image resize DLL]
|
|
|
|
|
MPTP wrote: 3 Lauch Disk Management Tool
ShellExecute(hWnd, "open", "diskmgmt.msc", ...);
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
i have made a setup and deployment project named "myTry1"
which contains "xyz.exe" at a location specified . the location is being asked in a GUI that starts when i click the setup icon generated in the Debug folder of "myTry1"
Requirement:
I donot need the GUI to appear as my final location/path is fixed.
I just need a command line based process instead of GUI(Graphical User Interface).
I am new to this topic "Set up and Deployment projects"
plz give suggestion as quickly as possible , i need it very quickly.
Thankyou!
kapardhi
|
|
|
|
|
Kapardhi : I got the solution thanks !
|
|
|
|
|
I am testing one application in vista platform and found that SetWindowsHookEx function fails in VISTA.
SetWindowsHookEx return NULL.
journalHook = SetWindowsHookEx(WH_JOURNALPLAYBACK, (HOOKPROC)WDChangeProc, hInst, 0);
Thanks in advance.
Yes U Can ...If U Can ,Dream it , U can do it ...ICAN
|
|
|
|
|
from MSDN [^]:
Return Value
If the function succeeds, the return value is the handle to the hook procedure.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Anyway one may guess that elevation is needed there.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
|
Thanks Xing Chen,
I read this but not find any suitable solution but now my problem is solved by disabling UAC in Vista.
Yes U Can ...If U Can ,Dream it , U can do it ...ICAN
|
|
|
|
|
Hi all,
Please help me...
I am have written below function in which I am calling repeated as per my requirement..
typedef HRESULT (*PROCHICON)(HICON*);
typedef CString (*PROCCSTRNAME)();
typedef CString (*PROCCSTRCONT)(CString);
LoadButtonPluginDLL(CString DLLPath,CString &ButtonText,HICON &ImageHandle,CString &ButtonContent)
{
PROCHICON ProcButtonHicon;
PROCCSTRNAME ProcButtonName;
PROCCSTRCONT ProcButtonContent;
HINSTANCE hLib = ::LoadLibrary(DLLPath);
if(hLib==NULL)
{
MessageBox(_T("Fails To Load Dll"));
return;
}
ProcButtonHicon =(PROCHICON)::GetProcAddress(hLib,"GetButtonImage");
if(ProcButtonHicon == NULL)
{
::FreeLibrary(hLib);
CoUninitialize();
return;
}
ProcButtonName =(PROCCSTRNAME)::GetProcAddress(hLib,"GetButtonText");
if(ProcButtonName == NULL)
{
::FreeLibrary(hLib);
CoUninitialize();
return;
}
ProcButtonContent= (PROCCSTRCONT)::GetProcAddress(hLib,"GetPluginContent");
if(ProcButtonContent == NULL)
{
::FreeLibrary(hLib);
CoUninitialize();
return;
}
((PROCHICON)ProcButtonHicon)(&ImageHandle);
ButtonText =((PROCCSTRNAME)ProcButtonName)();
ButtonContent =((PROCCSTRCONT)ProcButtonContent)("1");
if(hLib)
FreeLibrary(hLib);
}
When I callabove function first time it works fine I get proper values in ImageHandle,ButtonText,ButtonContent from dll. but when I call this function second time and after calling FreeLibrary(hLib);variables ButtonText & ButtonContent become BadPtr and I can't use these values out side the function.
modified on Friday, August 1, 2008 4:47 AM
|
|
|
|
|
1. Please use code block button to surround code snippets with <pre> tags.
2. Why do you need to initialise COM library?
3. Why do you load the DLL and unload it inside your function body (overhead)?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
Thanks for reply
Actually this thing is some what new for me
so while doing some R&D to overcome this problem I have initialize Com library, I think it is not necessary ..
>3. Why do you load the DLL and unload it inside your function body (overhead)?
- At runtime Dynamically my dll names & path will also be varying thats why I am Loading & Unloading DLL inside my function only.
this bug I am facing when I am calling this function for same dll, second time. I think my dlls are not getting freed properly in first call of this function.
Please help me...
|
|
|
|
|
Could you please edit the OP and reformat your code as requested?
Is the DLL 's code yours (Are you properly doing cleanup inside it?)?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
thanks you for reply..
Code is reformatted please check..
the DLL's code is written by my team member,I need to check with him..
but it is working properly for ImageHandle which is passed by reference in this function. It is causing problem with ButtonText & ButtonContent only...
|
|
|
|
|
Rahul Vaishnav wrote: Code is reformatted please check..
the DLL's code is written by my team member,I need to check with him..
but it is working properly for ImageHandle which is passed by reference in this function. It is causing problem with ButtonText & ButtonContent only...
Well, since the DLL 's source code is available you may debug the whole thing.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[Image resize DLL]
|
|
|
|
|
Ok I will debug it
Thank you very much for reply..
bye
|
|
|
|
|
Rahul Vaishnav wrote: ((PROCHICON)ProcButtonHicon)(&ImageHandle);
ButtonText =((PROCCSTRNAME)ProcButtonName)();
ButtonContent =((PROCCSTRCONT)ProcButtonContent)("1");
This is a very odd way of calling functions. Why not:
ProcButtonHicon(&ImageHandle);
ButtonText = ProcButtonName();
ButtonContent = ProcButtonContent("1"); Rahul Vaishnav wrote: if(hLib)
Redundant check.
"Love people and use things, not love things and use people." - Unknown
"The brick walls are there for a reason...to stop the people who don't want it badly enough." - Randy Pausch
|
|
|
|
|
I had a similar problem: Access violations caused by bad pointers after having freed a dll with FreeLibrary. Your problem sounds just the same.
The problem was, the dll and the exe each had its own copy of the c-runtime-library and each c-runtime-library had its own heap. Freeing the dll also freed its heap and all dynamically allocated memory.
To overcome this problem: Free memory where it had been allocated
Her is the link about the 'FreeLibrary problem' where i found the answer to the problem:
http://java.codeproject.com/Feature/SubtleBugs.aspx?fid=1647&msg=2660410
|
|
|
|
|
Thanks you for your reply..
I was on leave thats why I couldnt reply..?
I will go through this link..
Thanks you.
|
|
|
|
|
In the MSDN, it says below:
lpszIcon
Identifies an icon resource. This parameter can be either a null-terminated string or an integer resource identifier passed to the MAKEINTRESOURCE macro.
To load one of the standard system-defined icons, set the hInstance member to NULL and set lpszIcon to one of the values listed with the LoadIcon function.
This member is ignored if the dwStyle member does not specify the MB_USERICON flag.
MSGBOXPARAMS msgparam = {0};
msgparam.cbSize = sizeof(MSGBOXPARAMS);
msgparam.hwndOwner = NULL;
msgparam.lpszText = _T("text");
msgparam.lpszCaption = _T("caption");
msgparam.dwStyle = MB_USERICON | MB_OK;
msgparam.hInstance = NULL;
msgparam.lpszIcon = ::LoadIcon(NULL, IDI_WINLOGO); <font color="blue">I want to use as the MSDN says.Actually I know it will compile error.</font>
::MessageBoxIndirect(&msgparam);
<pre>
|
|
|
|
|
What is the problem ? What is your question in fact ?
Di you have a compilation error ? If yes, why don't you simply put the exact error message so we can try to help you ?
|
|
|
|
|
//msgparam.lpszIcon = ::LoadIcon(NULL, IDI_WINLOGO);
msgparam.lpszIcon = MAKEINTRESOURCE(IDI_WINLOGO);
The MSDN has fooled me, or I misunderstand the MSDN words, I should just use MAKEINTRESOURCE, not using ::LoadIcon.
|
|
|
|