任何方法来确定何时编译/构建.net程序

时间:2012-06-13 00:50:59

标签: vb.net visual-studio

我需要证明我写的VB.NET程序是在特定时间编写的。

(原因是有人复制我的代码的学术诚信调查。)

我的磁盘上有所有代码,包括调试和发布文件夹,我的用户名在构建路径中。

他们可以做些额外的事情,例如查看二进制文件吗?

3 个答案:

答案 0 :(得分:3)

如果您使用IL反汇编程序打开EXE / DLL,然后选择菜单选项View> Header,COFF / PE标题中会有一个名为“Time-date stamp”的字段。它是二进制格式,根据MSDN,它是:

  

图像时间戳的低32位。这表示链接器创建映像的日期和时间。根据系统时钟,该值以自1970年1月1日午夜(00:00:00),通用协调时间以来经过的秒数表示。

答案 1 :(得分:1)

首先应该将所有数据复制到另一台设备上 - 确保保留所有日期时间。不要打开或编辑任何文件。

每个文件都有三个时间戳,创建时间,上次修改时等。可以使用DIR / T

找到这些时间戳。
  /T          Controls which time field displayed or used for sorting
  timefield   C  Creation
              A  Last Access
              W  Last Written

获取此目录的列表:

DIR myrootdir /s /ah /as /tc > fileslist.txt

这会将具有创建时间的所有文件转储到名为fileslist.txt

的文件中

同样正如@EricJ所说:提供你的磁盘作为证据 - 但就像我说的那样先制作副本。最好先将图像副本(Windows备份)复制到另一个驱动器。

答案 2 :(得分:1)

调查人员正在以错误的方式解决这个问题。

任何时间戳数据都可以伪造,因此最好的方法是让他们分别坐下来询问有关代码如何工作的详细问题。 或者要求双方在考试条件下再次单独完成一个小型测试项目。

复制作品的人不会理解他们最有可能复制的内容,并且无法根据类似的概念重现某些内容。

写这篇文章的人 - 除非他们作弊,否则他们会深入了解。