|
You have my sympathy, but unfortunately the only way to track this sort of error is to add logging and debugging code to your application. I worked in technical support for many years and often saw problems such as you describe, and yes, they were extremely difficult to diagnose.
|
|
|
|
|
That's not how paging works, addresses will be preserved. Get as many crash dumps as you can from the client and start debugging.
Steve
|
|
|
|
|
as the title, I try to use use webbrowser to visit many webs one by one without a break. the memory grows up little by little, finally my program crash down.
I did a lot research, but got little useful information,(somebody said that memory leaks,but I don't know the reason and how to avoid) so I'm here. my code like this.
try
{
_variant_t vTmp;
m_webBrowser.put_Silent(TRUE);
m_webBrowser.Navigate(strWeb, &vTmp, &vTmp, &vTmp, &vTmp);
}
catch (...)
{}
I will call this every 10 seconds continuously. any tips will be appriciate. thanks for your attention.
|
|
|
|
|
Hi,
I have a scenario where i should copy and register a com exe but the problem is i don't have admin rights on that pc.
I know that if it is a com dll then using manifest file i can use it without even registering.
Can someone suggest me if there is a way to register com exe without admin rights or use a unregistered com exe using the manifest file?
Thanks in Advance,
Hari krishna
|
|
|
|
|
You can use the CoLoadLibrary()[^] function to load and use an unregistered COM library.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
|
You need to tell this to the questioner, not to me.
|
|
|
|
|
Sorry, for the misunderstanding, it wasn't for you, it was for the OP.
|
|
|
|
|
Hi,
I am getting a ACCESS_DENIED error message when calling GetDsOfNames Here at work I am not looged on as an adminstrator and have no such rights
The support group here wants to know what type of permission I would need
Not having access to the registry and not being all that of expert I dont know what
answer to give
If am running Windows XP Service Pack 3
If anyone can shed some light would appreciate it
Thanks
|
|
|
|
|
I think you need administrator rights to access HKCR keys. You can check this by running regedit to see if it will start under your userid.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
Hi,
While building a Natiave OLE/COM program build hangs (does not complete) trying to build a .ocx file
IS there anotherway to build the ocx that isn't so time consuming
Thankx
|
|
|
|
|
Hi,
I am writting a COM app using the MFC wrappers
There are however certain methods/properties which don't have C/C++ prototypes
so I decided to use native OLE functions
I never got by GetIDsOfNames as
what ever method name I insert I get a -1
I have tried native OLE
CoInitialize(NULL); CLSID clsid; HRESULT hr = CLSIDFromProgID(L"Excel.Application",&clsid);
and the MFC wrappers function
_application::CreateDispath
as this method populates
m_lpDispatch
And whatever method property I use I get -1
Any help appreciated
|
|
|
|
|
You need to use the GetLastError function[^] to determine why it fails.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
Hi,
I have noticed that certain OLE functions dont have MFC wrappers one in particaular Is OpenText
I have noticed also that it seems that for those functions that dont have MFC wrappers, they use a generic AUTOWRAP function
Which is base on native OLE functions
such as IDispatch
I have intlized OLE using MFC/Framework AfxOleInit
to use native ole functions would I have to do intilzations twice
e.g. CoInitlize(NULL) and then CoCreateInstance
I need MFC as I would like use Windows Service in this program
Please Advise
Thanks
|
|
|
|
|
You don't need to call CoInitialize() again.
You will need to check to see if the MFC interfaces are dual or not. If they are you can use then as if that are non-automation interfaces. I.e. just go
obj->SomeMethod();
My guess is probably not, in which case you will have to use IDispatch->Invoke(...) which is a real pain.
I'm sure you can find helper code out there on the Web.
|
|
|
|
|
Hi,
I am trying to paste a .txt file onto
an Excel spreadsheet
Off hand it seemed to me the logical
method would be _WorkSheet::Paste
I have done countless google searches
and have yet to come up with C++
exampe of how this method is used
This is the prototype of the method in Excel.h
void Paste(const VARIANT& Destination, const VARIANT& Link);
When I did research on the data type VARIANT the documentation said its a union for many data types
One of them being a LDISPATCH type
The code below is a snipet of the code I have been stuggling with to get the _WorkSheet::Paste method
to work
My logic was to get a LDISPATCH pointer to the range off cells I was trying to paste onto
However I keep on running into exceptions
If anyone could shead some light on this I would be very gratefull
thanks in advance
CI46023App theApp; _Application app; _Workbook objBook; Workbooks objBooks; Worksheets objSheets; _Worksheet objSheet; LPDISPATCH myrangeptr;
app.CreateDispatch("Excel.Application");
objBooks = app.GetWorkbooks();
objBook = objBooks.Add(VOptional);
objSheets = objBook.GetWorksheets();
objSheet = objSheets.GetItem(COleVariant((short)1));
myrangeptr = objSheet.GetRange(COleVariant(TEXT("A1")),COleVariant(TEXT("M34")));
objSheet.Paste((VARIANT &)myrangeptr, COleVariant((short)TRUE));
|
|
|
|
|
I'm not quite sure if the Worksheet.Paste method does what you want. It will copy text from the clipboard to the specified (or current) selection (see Worksheet.Paste Method[^]). Setting the second parameter to TRUE will not copy the text but place a link. So if you have copied the text from the file to the clipboard, you may use this function but should pass FALSE as second parameter (or COleVariant((long)DISP_E_PARAMNOTFOUND, VT_ERROR) as optional value which uses the default).
However, the first (also optional parameter) is a range object. Just declare the object, assign the return value of GetRange() and pass it to Paste() :
Range objRange = objSheet.GetRange(COleVariant(TEXT("A1")),COleVariant(TEXT("M34")));
objSheet.Paste(objRange, COleVariant((short)FALSE));
|
|
|
|
|
Hi,
I am at home now but from what I remember when I tried to build the code with VISUAL C++ 6.0 I got a build error saying cannot convert paramter 1 from const struct &VARIANT to class Range The documentation says it accepts a range object as the first parm
but the prototype for the code is Paste(const &VARIANT,
|
|
|
|
|
Sorry, I overlooked the parameter type.
WorkSheet.GetRange() returns a LPDISPATCH which can be assigned to a Range object. You can use the LPDISPATCH returned by GetRange() or access the underlying IDispatch pointer of an existing Range object using the LPDISPATCH() operator to create the required variant:
VARIANT vtRng;
vtRng.vt = VT_DISPATCH;
vtRng.pdispVal = objSheet.GetRange(COleVariant(TEXT("A1")),COleVariant(TEXT("M34")));
objSheet.Paste(vtRng, COleVariant((short)TRUE));
|
|
|
|
|
Hi,
First off I like to thank Richard MacCutchan with helping in setting up my C++ project to generate the MFC OLE wrappers classes
One strange thing unlike the regualar MFC classes CWinThread, CDialog
There doen't seem to be any MSDN docmentation about any of the methods in the wrapper classes
One can only guess by thier name what they do
thanks
|
|
|
|
|
See here[^].
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
Hi,
I am finally begining to understand why the Microsoft article said I should create dialog based ontrol as a MFC app needs a main window
I tried to follow the article in creating the project but I wa a bit confused what the srticle meant by changing the IDOK button IDCRUN
I ended up getting some sort of exception when existing Cdialog::Initinstance I beleive it be a invalid Hwnd for the Dialog
COnceputally then the Excel spread sheet is a control with the Cdialog being the mainwindow
Richard the doumentation you pointed me to was about Wrapper classes as MFC frontends the OLE functions
I was looking for documentation of the type Cdialog::GetDefID in native MFC there would be documentation for Range::SetValue for the wrapper classes
Thanks again
|
|
|
|
|
I keep pointing you to MSDN and various related pieces of documentation, but you keep coming back here asking for the same thing. Try using the tools at your disposal (Google, Bing etc) to find what you are looking for.
One of these days I'm going to think of a really clever signature.
|
|
|
|
|
I have asked a lot about how to read PDF files(just like JAWS, a quit good screen reader), what I want to ask is that does anybody know how JAWS make it. I mean,what kind of tech does JAWS take advantage of. I guess it used MSAA.
I'm trying to do the same thing with JAWS now, so I need your help, if anybody has done such things, please help! Appriciate it.
|
|
|
|
|
Hello Bian ChengNan,
With regards to your question, the following link gives you a full and thorough description of the who, what, when, where how.
http://www.indiana.edu/~iuadapts/technology/software/jaws/jaws_faq.html
Hope this helps!
Best of Luck,
With Kind Regards,
April
Comm100 - Leading Live Chat Software Provider
modified 27-May-14 8:34am.
|
|
|
|