|
From the code snippet you've shown, I see no benefit in using MFC. It's not going to do anything for you. When you create a console application that supports MFC, the main reason for doing so is to take advantage of one or more of the non-GUI classes that MFC provides. I just don't see that with what you have provided. Please correct me if I've errored.
"Ideas are a dime a dozen. People who put them into action are priceless." - Unknown
|
|
|
|
|
I am creating an user interface, in that i will set & recieve the value to the amplifier..My main aim is to do in mfc ...thats why i dont how to make it work the same program in mfc..
thanx david for taking time in this...
waiting for the reply,
mfg,
kingsly.
|
|
|
|
|
I/O to a console window is done using cin/cout if using C++, or scanf/printf if using C. MFC does not provide anything useful for this, unless you are creating a GUI application.
"Ideas are a dime a dozen. People who put them into action are priceless." - Unknown
|
|
|
|
|
so we cant do this project in mfc .. or we have to do piping(console to mfc)
ur suggestion...
mfg,
kingsly
|
|
|
|
|
Assariah kingsly wrote:
so we cant do this project in mfc
Of course you can, but there's nothing in the code snippet you've shown that would benefit from it. A lot of the classes offered by MFC are GUI-related. There are a some, however, that aren't. For example:
CString
CFile
CDatabase
CCriticalSection
CSocket
CTime
CList See here.
Have you tried using MFC's AppWizard to create a dialog-based application?
"Ideas are a dime a dozen. People who put them into action are priceless." - Unknown
|
|
|
|
|
can you tell the way search engines find certain file types over the net
I wasn't able to find .mdb files over the net or database files in general. Can you help me with this issue or tell me a good search engine ?
gabby
|
|
|
|
|
Unless a page actually references the .mdb file by name, a search engine won't find it.
"Ideas are a dime a dozen. People who put them into action are priceless." - Unknown
|
|
|
|
|
I am using :
#import "msxml4.dll"
using namespace MSXML2;
in my project. I want to create an XML file and read data from a separate XML file.
MSXML2::IXMLDOMDocumentPtr pIXMLDOMDocument;
MSXML2::IXMLDOMProcessingInstruction *pIXMLDOMProcessing =NULL;
MSXML2::IXMLDOMNode *pNode;
I am getting a compiler error 2660 MSXML2::IXMLDOMNode::appendChild does not take 2 arguments.
I believe that there is something wrong with the namespace that i am using..
Can anyone provide any assistance? I am on a windows 2000 system with msxml 4 sdk
Below is how i use the functions:
pIXMLDOMDocument->createProcessingInstruction("xml", "version=""1.0""", &pIXMLDOMProcessing);
pIXMLDOMDocument->appendChild(pIXMLDOMProcessing,&pNode);
I got this example straight from the SDK. Not sure why it won't build.
Thanks
|
|
|
|
|
LCI wrote:
createProcessingInstruction("xml", "version=""1.0""", &pIXMLDOMProcessing);
Your quote-escaping is wrong, use \" not ""
createProcessingInstruction("xml", "version=<font color=blue>\"</font>1.0<font color=blue>\"</font>", &pIXMLDOMProcessing);
--Mike--
Visual C++ MVP
LINKS~! Ericahist | 1ClickPicGrabber | CP SearchBar v2.0.2 | C++ Forum FAQ
Strange things are afoot at the U+004B U+20DD
|
|
|
|
|
Thanks for that... my error there..
But that still does not stop the compiler from saying that that function does not accept 3 arguments... Somehow, that function is has a different declaration and maybe it has something to do with the namespace. Do you know anything about that?
|
|
|
|
|
The example is using an older version. The prototype is:
IXMLDOMProcessingInstructionPtr createProcessingInstruction
(
_bstr_t target,
_bstr_t data
);
|
|
|
|
|
Hmm.
That seems to have done it. Where can i find documentation on the version that i am using because i have similiar issues with other functions, like appendChild and createElement
I call :
hr = pIXMLDOMDocument->appendChild(pIXMLDOMProcessing,&pNode);
and the compiler complains about appendChild does not take 2 args
and
hr=pIXMLDOMDocument->createElement(BSTR(L"Form"), &pIXMLDOMElement);
and the compiler complains about createElement does not take 2 args
Thanks for any input.
|
|
|
|
|
If you compile your code using an import statement, a file called msxml4.tlh will be generated from the typelib in the debug or release folder. You can see the prototypes in that file.
You can also open the msxml4.dll file in the Visual Studio Object Browser, which makes browsing the defs and prototypes a bit easier.
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
The following image shows what I'm talking about re: the object browser. Here you can see the prototype for the createElement method:
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
Tom thanks, i appreciate very much your responses. I am able to view the function declarations from the msxml4.tli file. My object browser does not seem to show the MSXML2. Maybe it is a setting thing, i dunno.
Now i am adjusting to this new parameter set and a little confused. Maybe you can answer this for me. Why are the .tli declarations so different from the MSXML 4.0 documentation example from microsoft that i was initially using. Is it like a patch to the MSXML 4.0 because in my declaration i do import msxml4.dll and use the namespace MSXML2, but yet my tli file declarations are different from the microsoft example.
Just a little confused..
Thanks again
|
|
|
|
|
LCI wrote:
My object browser does not seem to show the MSXML2
By default, you will only see the libraries in your project. You have to do the following:
- Open the Object Browser
- Click the Customize button at the top of the object browser
- When the Selected Objects dialog box appears, click the Add button
- Select the COM tab
- Select from the list the Microsoft XML 4.0 library and click the Select button
- Click the OK button to dismiss the dialog box
The library should now be viewable in the object browser.
Regarding the documentation, that I can't answer. I've just become accustomed to using the actual header file (or the object browser) to get the "real" prototype.
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
That is very cool...
Thanks for showing me that.
I am now able to continue development but have another question. Just attempting a simple task of trying to write
ThisForm
to an XML file. I wrote the code below, but am stuck at the appendChild line and the line after. Do i really need an IXMLDOMNodePtr?? How would i do it without?
MSXML2::IXMLDOMDocumentPtr pIXMLDOMDocument;
MSXML2::IXMLDOMProcessingInstruction *pIXMLDOMProcessing =NULL;
MSXML2::IXMLDOMNodePtr pNode;
MSXML2::IXMLDOMNode *pNode1 = NULL;
MSXML2::IXMLDOMElementPtr pIXMLDOMElement;
//Put some checks to create directory if not there
_variant_t varString = "C:\\XML\\myXML.xml";
// Initialize pIXMLDOMDocument (create a DOMDocument).
hr = CoInitialize(NULL);
hr = pIXMLDOMDocument.CreateInstance("Msxml2.DOMDocument.4.0");
// Load document.
if (pIXMLDOMDocument->load(varString)!= VARIANT_TRUE)
{
// trace(ERROR,"Error loading XML file");
}
//Populate the xml document
//Create elements
pIXMLDOMElement = pIXMLDOMDocument->createElement(BSTR(L"Form"));
hr = pNode->put_text (BSTR(L"ThisForm"));
if (SUCCEEDED(hr))
{
// Create a processing instruction element.
pIXMLDOMProcessing = pIXMLDOMDocument->createProcessingInstruction(BSTR (L"xml"), BSTR(L"version=\"1.0\""));
pNode = pIXMLDOMDocument->appendChild(pNode1);
pIXMLDOMDocument->putref_documentElement(pIXMLDOMElement);
}
//Save DOM to a file
hr = pIXMLDOMDocument->save(varString);
|
|
|
|
|
It looks like you have several problems here. What exactly are you trying to do?
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
Trying to create an XML file and write some basic tags in there.
Some tags will have attributes. So i am basically at this point trying to generate an XML file.
Trying to reproduce something like this through C++
-
<autosend>Yes
<responsekey printresponse="No" twowayxml="Yes">xvpqr7
<formname>RQ
|
|
|
|
|
Does the file exist currently? IOW, is this code supposed to create it from scratch or modify it?
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
File does not currently exist. I have to create it from Scratch. But it is supposed to look similiar to what is in the previous thread.
|
|
|
|
|
That process intruction is
?xml version="1.0" encoding="UTF-8" ?
I took off the brackets so that it should show up
|
|
|
|
|
Honestly, there's all sorts of issues here
* incorrect error checking
* use of incorrect types
* calling load when the file doesn't exist
* appending a node before you've created one
* appending a data node before the processing noe
* ...
I started to correct them all, but I think I found some code you can copy & paste that will get you started. Have a gander at http://www.codecomments.com/archive308-2004-5-195084.html[^] as this person is creating a simple document with a declaration node also. I ran the code and it works so this should get you started.
By the way, he's using the "older" style of manually using pointers and releasing them and so - as opposed to smart pointers. However, I'd just leave his code as is until you get a better feel for using the MSXML and then change it later.
At least that's the way I've always coded - get it to work first and then make it pretty.
Cheers,
Tom Archer - Archer Consulting Group
"So look up ahead at times to come, despair is not for us. We have a world and more to see, while this remains behind." - James N. Rowe
|
|
|
|
|
Am i understanding this correctly?
We use a Node to represent the very first first tag in the document. After that we use elements for all subsequent tags. Is this correct?
If so, i understand how to add set attributes for elements but i do not see how to set attrabutes for Nodes. I am trying to set some attributes for my very first node in the document.
By the way, Tom that example really helped.
Thanks
|
|
|
|
|
I'm trying to get a simple example working that contains multiple string tables in a single resource file. In VC 7.1 (and maybe earlier), you can select "Insert Copy" on an existing dialog in the resource editor and specify a different language.
If I look in the .rc file, both English and French (in this case) sections exist. When I build my application, I would expect my French dialog to come up when I change my Windows' Regional settings to French (France). But it doesn't. Has anyone gotten this to work?
Thanks for any help!
|
|
|
|