2009-01-07 21 views
2

我正在寻找有关Palm Desktop版本的Palm Desktop的“datebook.dat”文件文件格式的文档> = 4.1。需要Palm Desktop的datebook.dat文件格式

请注意,http://www.notsofaqs.com/datebook_dat.php文档是< 4.1 datebook格式的一部分,但我正在寻找当前版本Palm Desktop使用的当前“日历”格式。

存在PerlPHP脚本,这些脚本试图对部分格式进行反向工程,但完整的规范将会最有帮助。

我在Palm Developer网站上找不到任何东西。

唯一的额外线索我是

  1. 第一个四个字节的文件是“0xCAFEBABE”就像在Java类文件和Mach-O的文件(?!)
  2. 个论坛上发帖一个用户组提到Palm正在使用某种“MS序列化”技术,并将其链接到Palm开发者网络以前版本的已停用帖子中

任何帮助将不胜感激!例如,如果有人知道使用“0xCAFEBABE”幻数的Microsoftish序列化格式,这可能有助于我的侦测。

回答

0

我不想让你失望,但这几乎是不可能的。我有一个手掌5年,花了几个小时来同步我的手掌与任何开放平台。

它仍然无法正常工作。唯一的工作解决方案是与Outlook同步。

没有关于Palm的文件格式的官方文档。在我看来,他们对开放代码不感兴趣,Palm Inc.比他们的文件格式更重要。

我放弃了。这是一个遗憾,但没有选择。

0

格式IIRC是Microsoft基础类(MFC)使用的序列化格式。它高度依赖于正在保存到光盘的C++对象的实际实现。由于MFC源代码随Visual Studio一起提供,因此您可以查看该问题以了解发生的情况。

但是,随着4.1桌面应用程序的更新,二进制格式确实发生了变化,以处理添加的新字段。我不知道这些更改,或者如果代码使用与原始桌面相同的方法。

+0

这很难相信。为什么Pam会使用MFC序列化格式?是不是桌面和Palm之间共享的文件格式? – jdigital 2009-01-13 01:07:13

+0

我相信Palm本身的数据是以PDB格式存储的,这些格式实际上是*记录的。但是,如果你正在编写一个Palm应用程序,这才有用。日历Hotsync管道将数据转换为PC格式,是否正确? – 2009-01-14 20:29:36

0

另一个地方是jpilot项目。这是一个创建掌上数据库的Linux PIM,然后可以直接同步到掌上电脑。

0

here,在perl上有一个很好的读者可以看到格式。

0

只是在寻找相同的东西,偶然发现了这个讨论。目前为止我找到的最好的是dbapipe,它可以读取和写入dba文件(使用自己的文本格式作为中间表示)。该程序处理4.1.4和更早版本的格式。当然,这并不构成文件,但工作计划是一个好的开始。该程序使用C语言编写,下载内容包括Windows的预编译版本。

编辑:

注意,如果它击中同一个位置的日历项dbapipe失败。

我找到的另一个资源是Gabbie natural language command system的一部分Palm掌上电脑操作模块。其palm.c file有一些文件。

很遗憾,Palm没有提供其文件格式的官方文档。我想知道这是否是kludgey设计的尴尬。

2

Palm Desktop 6(“Palm Desktop by ACCESS”)以MS Access格式存储文件。正如其他人所提到的,Palm Desktop的早期版本(例如4.x及更早版本)以专有格式存储文件。如果您使用Palm Desktop将日历保存为日历存档格式(而不是日历存档格式,该日历存档格式可能会令人困惑地使用DBA扩展名),它将采用完全记录在此处的格式:http://www.notsofaqs.com/palmrecs.php

我知道这些文档是完整的,因为我用它们来编写Palm2CSV,这是一款Palm/CSV/iCal转换器,可以与Palm 4和Palm 6文件一起使用。 (它首先通过MDBTools运行它们来处理Palm 6文件,然后解析CSV输出。)