|
raghu valluri wrote: for ex i get an error from byteorder.h
And yet you don't show us what #include s you have in your code - your issue is likely a missing include or abad ordering of include files, so that would help.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Hi friends,
I would like to check whether my Active-X is registered or not.
If it isn't registered, so I'll register it; else I play my flash file.
But once I personally unregister the Active-X through "regsvr32 /u ....", CoCreateInstance function returns "S_OK" and it means it has registered successfully.
I would like to know is my way to recognize Active-X registration is correct or not and why it never
returns false when it hasn't registered before?
This is my code:
CLSID clsid;
LPUNKNOWN pUnkCtrl;
HRESULT hr = CLSIDFromString(OLESTR("{D27CDB6E-AE6D-11cf-96B8-444553540000}"), &clsid);
hr = CoCreateInstance(clsid, NULL, CLSCTX_ALL, IID_IUnknown, (void**)&pUnkCtrl);
if (SUCCEEDED(hr))
{
// The Active-X has been registered already.
AfxMessageBox("The Active-X has been registered already!");
// Play the Flash-File
}
// The Active-X does not register yet. It must be registered first.
else
{
//AfxMessageBox("The Active-X hasn't been registered yet!");
}
|
|
|
|
|
Mohammad Khodaea wrote: if (SUCCEEDED(hr))
Means:
S_OK - An instance of the specified object class was successfully created.
REGDB_E_CLASSNOTREG - A specified class is not registered in the registration database. Also can indicate that the type of server you requested in the CLSCTX enumeration is not registered or the values for the server types in the registry are corrupt.
You need to google first, if you have "It's urgent please" mentioned in your question.
_AnShUmAn_
|
|
|
|
|
Mohammad Khodaea wrote: CLSCTX_ALL
Is that *really* what you want in the CoCreateInstance call? If your ActiveX thing is an in-proc server, use CLSCTX_INPROC_SERVER , otherwise you can get some screwy resuylts - I know, I've seen them.
Mohammad Khodaea wrote: But once I personally unregister the Active-X through "regsvr32 /u ....", CoCreateInstance function returns "S_OK" and it means it has registered successfully
Is it possible that there was more than one registration for your ActiveX thing (which is possible, I believe, with Vista and XP). One of them got unregistered, you still have a registration in the registry.
Try using RegMon[^] and FileMon[^] to see what files and bits of the registry your process is touching during the CoCreateInstance call - that could point out what's not behaving according to your expectations.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
Hello all,
In my project I am creating a SDI application without Document/View architecture in MFC(Visaul C++ 2008).
Now in it, I am creating a child window using "Create()" method with window style "WS_CHILD" and i am calling this "Create()" method from "OnCreate()" of CMainFrame class.For this newly created child window I have created a new class.Now on this new child window I have added some controls like edit boxes, buttons and these controls are also created by "Create()" method and with "WS_CHILD" style.
Now my actual problem is that when I run the application, child window gets created and I can see the controls added on the child window also but I can not access these controls means these controls are disabled. Can anyone tell how to enable these controls on child window.Please help me out.
Thanks and Regards,
Abhijit
|
|
|
|
|
Hi ,
I have created an allication, i am to build the application in Debug Mode but it am not possible to build in release mode.
I have tried in building in release mode , but am getting error as "unexpected end of file while looking for precompiled header directive".
Need Help
Thanks,
Balaji S
|
|
|
|
|
You need to set the same project properties in the release than the ones you used for debug mode (in that specific case, you have to disable precompiled headers. The different modes have their own set of properties, so each time you change something in the properties for debug mode, you have to change it for the release mode also (if this is needed, sometimes you want to have different settings).
|
|
|
|
|
Hi all
Our application has to kill OUTLOOK.exe if it runs only in background . Assuming we already have process id and handle to kill it with TerminateProcess , how to find if this outlook.exe has UI active or not ?? Any APIs please ...
redindian
|
|
|
|
|
Use EnumWindows to enumerate all open windows.
Use GetWindowThreadProcessID on the window handle to get the process Id of the window.
Compare with the process Id you already have.
Now you can use TerminateProcess (or a better way) to kill outlook.
«_Superman_»
|
|
|
|
|
I am already aware of how to enumerate the processes and kill it . What I want to know is : To find if a process is running in background or running with UI ....
redindian
|
|
|
|
|
|
dharani wrote: What I want to know is : To find if a process is running in background or running with UI ....
You may want to check out functions like IsWindowVisible() , IsWindowIconic() , SendMessageTimeout(hWnd, WM_NULL, ...) , and GetForegroundWindow() .
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
dharani wrote: runs only in background
Define what you mean by that.
Java, Basic, who cares - it's all a bunch of tree-hugging hippy cr*p
|
|
|
|
|
My need is application will be removed after their work completed.how i do that
|
|
|
|
|
Create a batch file from within the EXE.
Run the batch file and exit the EXE.
In the batch file create a loop and try to delete the EXE.
Check ERRORLEVEL to confirm the deletion.
Delete the batch file itself.
«_Superman_»
|
|
|
|
|
Yes i need to delete the exe file itself after completion.how to create batch file.Can you please explain in brief
|
|
|
|
|
Batch file is just a text file with a .bat extension in which you can give dos command like del to delete a file.
Create the file through code (CreateFile ) and use CreateProcess to run it.
«_Superman_»
|
|
|
|
|
See here.
"Old age is like a bank account. You withdraw later in life what you have deposited along the way." - Unknown
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
|
|
|
|
|
are you trying to close another exe or your exe itself?
You can close your application by Sending WM_CLOSE message to the main window
AfxGetMainWnd()->PostMessage(WM_CLOSE);
or by callnig using PostQuitMessage API
You can kill another process by calling
TermainteProcess[^] API with the process's handle. Remember it's an brutal and unsafe method.
--added--
If you're trying to delete file just call DeleteFile[^] API and pass the path of executable.
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
modified on Wednesday, February 11, 2009 4:49 AM
|
|
|
|
|
I think he's trying to physically delete the executable file once it has exited, not trying to stop it while running.
|
|
|
|
|
hmm... I just updated my previous post. Anyway his question is not well clear
-Sarath.
"Great hopes make everything great possible" - Benjamin Franklin
|
|
|
|
|
All possible methods are explained here[^]
|
|
|
|
|
Hello,
I have a handle of a dialog(The dialog lies in another process). Now I want to add a button to that dialog, is it possible ?
Thanks.
|
|
|
|
|
Have a function in your Dialog class that has this :
<br />
CButton* pButton = new CButton;<br />
pButton->Create("NewButton", WS_CHILD | WS_VISIBLE,<br />
CRect(x, y, x1, y1), this, 1234);<br />
OK,. what country just started work for the day ? The ASP.NET forum is flooded with retarded questions. -Christian Graus
Best wishes to Rexx[^]
|
|
|
|
|
I think I mentioned that the dialog exists in another process.
|
|
|
|