Win32开发。标准

时间:2011-02-14 08:39:34

标签: c windows database winapi standards

调用所有Win32开发人员......我正在使用普通的Win32在C中开发一个应用程序。我想问一下有关这些事情的Windows开发标准:

  • 是否存在标准的Windows错误日志API?例如,如果我的客户端使用我的应用程序并且崩溃,我希望他们向我发送错误日志,我希望这是一个标准位置,以便他们可以使用标准Windows日志实用程序访问它。

  • 我的应用需要存储设置信息。我认为注册表是此任务的标准实用程序。是吗?

  • 我的应用需要存储和检索从互联网上下载的文件 - 图像,可执行文件等。Application Data/myapp是存储此类信息的标准位置吗?

  • 我的应用程序需要一个非常直接的数据库 - 我正在使用CSV。我基本上需要存储和检索这种类型的数据,所以我只是从Application Data/myapp序列化.csv文件。有没有更好的Windows标准方法呢?

这就是现在的全部:)。谢谢!

1 个答案:

答案 0 :(得分:2)

  

是否存在标准的Windows错误日志API?

有Windows事件日志,但我认为您不希望一个典型的用户必须进入它以提取您记录的信息。

您可能不希望默认记录,除非您发送可疑的预发布代码。当用户遇到问题时,您可以让他们开启登录。在这种情况下,我建议将文件放在典型用户体验过的地方,例如My Documents。

顺便说一句,如果您正在编写一个独立的应用程序并希望在发生崩溃时获得最佳信息,请查看minidump。 Here is a Codeproject sample

  

我的应用需要存储设置信息

是的,注册表。

  

我的应用需要存储和检索文件

是的,应用数据。请务必使用SHGetFolderPath和CSIDL_APPDATA。

  

我的应用需要一个非常直接的数据库

简单数据的CSV没有任何问题。如果您愿意,可以将数据存储在XML中并使用MSXML进行处理。过去,当我需要快速,轻量级的更复杂数据存储时,我使用过SQlite。