我在C++中创建了一个应用程序,并想知道如何实现一个使用统计系统,以便我可以收集一些关于用户如何使用该程序的数据。C++使用情况统计
例如, IP地址,应用程序花费的小时数和使用的操作系统。
从理论上讲,我知道如果必须的话我可以自己编码,但我想知道是否有框架可以使这更容易做到。不幸的是,我无法在谷歌上找到任何东西。
我在C++中创建了一个应用程序,并想知道如何实现一个使用统计系统,以便我可以收集一些关于用户如何使用该程序的数据。C++使用情况统计
例如, IP地址,应用程序花费的小时数和使用的操作系统。
从理论上讲,我知道如果必须的话我可以自己编码,但我想知道是否有框架可以使这更容易做到。不幸的是,我无法在谷歌上找到任何东西。
虽然没有任何一种这样的框架,但您可以通过使用一些方法和技术来减少您必须做的工作(以检索所有这些信息),我尝试了下面的描述。请任何人随时纠正我。
让我们总结一下,我们需要完成的任务是什么组的信息:
那么,如何可以实现的最后一个项目(用户相关信息)的要求?至于我,我会做一些像folowing(有些看起来很难实施或太无意义): - 创建一种基类计数器类,并从它派生一些控制(按钮,编辑等)。 - 在获取子句柄时使用鼠标或键盘的窗口挂钩(例如,识别控件)。 - 使用Callback类,它可以完成所有“脏”工作(计数,测量,执行其他操作)。
您可以将所有这些信息存储在文本文件或SQLite数据库中,或存储在任何您喜欢的地方。
我建议看看DeskMetrics。这StackOverflow post总结了这个问题。
构建您自己的框架可能需要几个月的时间(除维护外)。使用类似Trackerbird Software Analytics的东西,您可以将DLL与应用程序集成在一起,并在30分钟内开始跟踪,并获得所有酷炫的实时可视化效果。
声明:我隶属于公司。
什么样的应用程序?查询操作系统的范围可以从简单到中等复杂。 – moshbear
如果你这样做,如果他接受发送收集的数据,一定要**询问用户。我知道如果未经我的同意,我会停止使用任何发送有关我的计算机数据的软件。 – ereOn
+1 to ereOn,并补充:在某些司法管辖区,未经许可收集几乎肯定是_illegal_。 – paxdiablo