A phone call to any or all Win32 designers... I am developing a credit card applicatoin in C using plain Win32. I needed to request about Home windows development standards regarding this stuff:

  • It is possible to standard Home windows error log api? For instance if my client uses my application also it crashes, I'd like these to send me the mistake log and that i would rather this as being a standard location to allow them to maybe can get on having a standard Home windows log utility.

  • My application must store configurations information. I believe the registry may be the standard utility with this task. Is the fact that right?

  • My application must store and retrieve files it downloaded from the web - images, executables etc. Is Application Data/myapp the conventional place to store this kind of information?

  • My application requires a very straight-forward database - I am using CSV with this. I essentially have to store and retrieve this kind of data so I am just serializing b .csv file from Application Data/myapp. It is possible to better Home windows standard method of carrying this out?

That's all for the time being :). Thanks!

It is possible to standard Home windows error log api?

There's the Home windows Event Log, however i don't believe you'll need a typical user needing to get into it to extract your drenched information.

You most likely don't wish to log automatically, unless of course you are shipping questionable pre-release code. Whenever a user is going through problems, then you've them turn logging on. Within this situation, I suggest placing the file somewhere that typical customers have knowledge about, like My Documents.

Incidentally, if you are writing a stand alone application and wish the perfect information in case of an accident, consider minidumps. Here is a Codeproject sample.

My application must store configurations information

Yep, registry.

My application must store and retrieve files

Yes, Application Data. Be sure that you use SHGetFolderPath and CSIDL_APPDATA.

My application requires a very straight-forward database

There is nothing wrong with CSV for straightforward data. You can keep data in XML and employ MSXML to process it, should you prefer. I have used SQlite previously after i needed fast, lightweight storage more complicated data.