我的C文件是从Pro*C生成的吗

Was my C file generated from Pro*C

本文关键字:Pro 文件 我的      更新时间:2023-10-16

我们正在从另一个开发人员那里继承应用程序。为了正确地支持它,我们首先要审核应用程序中哪些有效,哪些缺失,以及是否所有字体都编译为匹配的二进制文件。

在这个过程中,我们发现了一个C文件,据我所知,它似乎是由Pro*C文件生成的。

当被质问时,前一位开发人员说它不是从Pro*C生成的,他只是在Visual Studio中修改它(Odd)。保持这样一个文件的现状似乎几乎是不可能的。让我向你展示其中的一些内容:

/* CUD (Compilation Unit Data) Array */
static short sqlcud0[] =
{12,4130,31,0,0,
5,0,0,0,0,0,27,980,0,0,4,4,0,1,0,1,9,0,0,1,10,0,0,1,10,0,0,1,10,0,0,
36,0,0,2,60,0,4,984,0,0,1,0,0,1,0,2,3,0,0,
55,0,0,3,74,0,2,1000,0,0,3,3,0,1,0,1,3,0,0,1,3,0,0,1,3,0,0,
82,0,0,4,0,0,29,1077,0,0,0,0,0,1,0,

这个数组的长度超过17000个字符。

甚至:

static struct sqlcxp sqlfpn =
{
10,
"nameoftheCfile.pc"
};

所以,我想知道,他是否真的在使用一些Visual Studio工具来生成这个C文件,而它实际上不是一个ProC?是否可能是Visual Studio或其他工具生成了此文件,而他不知道它来自ProC文件?是否可以100%确认这实际上是一个编译过的Pro*C文件?

我希望这只是对前一位开发人员的误解,而不是他拒绝给我们原始字体。。。

提前谢谢。

是的,它是由ProC生成的。sqlcud或CUD(编译单元数据)数组是由ProC生成的,但Oracle没有透露它的结构。

此外,我们在开发者网站上发现了一本旧手册,其中自豪地指出Pro*C用于创建软件。

谢谢大家。