How to read .scd data files with in a mfc application - mfc

I just purchased and installed a application from 3 Cds using registration key in pendrive. After installation, I just got a MFC Application (.exe). When i viewed the files, I found a data folder inside which I found many .scd files. The data is accessible within the application.
Now I would like to extract that scd files and need those data alone
separately.
I tried with FileViewPro, Scribus and many exe reader Software, but not successful.
Please someone help me to read the .scd files to extract the data from it.
Thanks in Advance,

First of all, please clarify what is the MFC application you are referring to? Was it installed? How do you know that it is MFC app?
Secondly, by giving just a file extension you do not provide enough information about a file. it could be MD scheduler, MS system management, TurboTax and many more.
The only way to do what you need is to find an application that does that or learn about a file format from documentation and write your own application.
It may be impossible if the file is proprietary format and there is no documentation released.

Related

c++ what is the *clever* way of creating setup program and handle extraction

I know how to create and code my own setup program but i need to be redirected at some point. This point i'm sure inlight other people too.
I created a setup project. All is done. Except, installation files inside of EXE.
I know 2 different ways of doing this:
Create resource in EXE and embed RAR/ZIP file.
Put compressed archive with files along with EXE. EXE will read contents and data from this protected and compressed ZIP.
But what i want is number 1. I want to embed it. But;
What is the proper way of embedding this? Are other setup creators do the same thing? Embed resource as compressed single zip in EXE? Or do they another trick?
How do you extract files? On the fly by memory? Like read each file one-by-one. Synced. Or first, copy ZIP to temp and extract from it.
Or even embed all files separately to the resources.
I, even think that if i should create simple MSI without dialogs and embed it and run from background but i want to take all control. I want everything belongs to the original setup that i created.
Note:
I want to make my own dialogs, effects, procedures, functions and
steps. Yes, MSI is acceptable but i will stick with its features. Oh,
If im able to extend it, why should i spent more time doing this
instead of making my own? I am so confused... I am talking about very big setup project here. Not just a standard ugly UI with less features. At least, im gonna try :)
Do not give me any sample/code just show me a correct path, please.
Best options here:
Create ZIP compatible EXE that reads itself as ZIP and read the file list and extract.
Create non-zip compatible EXE that has a hidden body somewhere and read that area (seek) and get the list & extract.
The proper way to do it is to use the Windows installer technology, aka MSI. There is a nice, Microsoft blessed toolset called WiX that you can use to greatly simplify the process.
http://wix.codeplex.com/
If you are truly intent on reinventing the wheel, you can look through the source code to WiX on how things are done.
Best options here:
Create ZIP compatible EXE that reads itself as ZIP and read the file list and extract.
Create non-zip compatible EXE that has a hidden body somewhere and read that area (seek) and get the list & extract.
Why write your own? Much easier to use WiX (http://wixtoolset.org/) with optionally a graphical interface like WiXEdit (http://wixedit.sourceforge.net/). Have you thought about additional requirements like uninstall etc...
Good luck!
Would InnoSetup help with your problem? You can personalise the dialogs and extend its functionality quite a lot.

How do I retrieve the file Property metadata in Windows from within QT?

I couldn't find a good answer for this.
What is the code for looking at the metadata of an executable file, like Description and Company, or the API reference guide for doing such a thing?
I have looked through QFileInfo, but the code can only read and output the basic cross platform information like names, path, and times.
I dont think there is a Qt'ish way to do it, because such information is not really cross-platform. As it was mentioned in comments best way to use windows API for this.
I faced once similar problem when I had to handle all this information within cross-platform project. So goal was to keep all metadata available through cross-platform builds as well as showing it properly on Windows File Properties dialog. Most fast solution I was able to come up with is to define all this information via #define in one version.h, so it became to be available within software and reuse same defines in windows RC file which included version.h and was included itself in the .pro under win32 condition.

Xml file are saved in two different path

I created application that store some data to XML file. The issues is with the path of the XML saving. Am using TinyXML to save the data in vc++.
When I deploy this application, it installs in "C:\Program files(x86)\applicationname " and when I run the application the XML file is saving in
"C:\Users\UserName\AppData\Local\VirtualStore\Program Files (x86)\ApplicationName ".
I have made this application to work on system startup. So when I restart this application,
the xml file is stored in different path "C:\Users\UserName\AppData\Local\VirtualStore\windows\sysWOW64"
I want my XML to be stored in the path where I installed or should be stored in appdata, application name
What should I do to store XML file in one places where application is installed?
doc.SaveFile( "test.xml" ); // xml saving code in tinyxml library
Firstly, this has nothing to do with C++, as the C++ code is probably working. Same with XML and tinyxml and even visual-c++.
It seems that windows redirects those write accesses to a user-specific "VirtualStore\Program Files", but I'll leave it to you to research the actual semantics of that. On startup, when there is no user, this path obviously differs, since the former user is not logged in.
Now, in order to get a fixed path, you can use the function GetModuleFileName() to find out the location of your executable and use that path to locate Smartmeter.xml. However, the problem you are facing now is that programs installed under "Program Files" don't magically gain write access rights to their install directory. This is to protect one user from messing with data of another user.
I think that what you are doing is writing a program that runs in the background, which would be called a "service" under MS Windows. What is still unclear is what you want to achieve with this file and also what you are planning to do overall, and these are things that decide the future steps. In any case, take a look at the possibilities that services provide, maybe there is something that fits your needs.

Video Archive Manager

I am developing an application in which I need to capture and display as well as record live video feed coming from an input camera or any other source.
I am working on Windows 7 64 bit machine and building my application in C++ using Visual Studio. Now since I will be archiving all the videos, so along with my application I need to provide a video archive manager which can easily save them and attach tag to the videos based on their name and timestamp and fetch them based on some query. I dont want to write the whole archive manager by my self because of time constraints. So can anyone suggest some open source or even some proprietary tool which can do this for me.
If you don't want something elaborate, you can use the OS IpropertyStore to update metadata for the file and use Windows Search to retrieve them.
IPropertyStore to update tags
ISearchQueryHelper for searching them.
Developing Property Handlers for Windows Search shows more.

Load Excel data into Linux / wxWidgets C++ application?

I'm using wxWidgets to write cross-plafrom applications. In one of applications I need to be able to load data from Microsoft Excel (.xls) files, but I need this to work on Linux as well, so I assume I cannot use OLE or whatever technology is available on Windows.
I see that there are many open source programs that can read excel files (OpenOffice, KOffice, etc.), so I wonder if there is some library that I could use?
Excel files it needs to support are very simple, straight tabular data. I don't need to extract any formatting except column/row position and the data itself.
Suggestedd reference: What is a simple and reliable C library for working with Excel files?
I came across other libraries (chicago on sf.net, xlsLib) but they seem to be outdated.
jrh
I can say that I know of a wxWidgets application that reads Excel .xls and .xlsx files on any platform. For the .xlsx files we used an XML parser and zip stream reader and grab the data we need, pretty easy to get going. For the .xls files we used: ExcelFormat, which works well and we found the author to be very generous with his support.
Maybe just some encouragement to give it a go? It was a couple of days work to get working.
Maybe http://www.libxl.com/ can help ?
I think that it is not something easy to do. xls files are quite complex and it is a proprietary format.
Maybe this is a stupid idea but why don't you upload and access your doc with Google docs. There are some apis to access your doc.
2 potential problems:
- Your app needs internet access
- Currently there is no C++ api.
But there are api for several languages including python see http://code.google.com/intl/fr/apis/gdata/articles/python_client_lib.html