【发布时间】:2015-07-22 23:51:12
【问题描述】:
我为一家公司编写了一个程序。他们想要源代码。
该程序使用我为多个客户的多个项目编写的代码。
我只想发布该程序使用的代码。因此,如果一个名为 Utils.pas 的共享文件包含十个函数,而该程序仅使用其中两个函数,那么我想发布一个名为 Utils.pas 的文件,其中仅包含这两个函数。
代码是 Borland Pascal,使用 Delphi 编写的。
有人知道我该怎么做吗?
澄清:我不是在询问许可。我希望客户只拥有他们的程序使用的源代码,而不是其他任何东西。
【问题讨论】:
-
如果你不能用你现有的文件结构做到这一点,你还没有把它分解成足够多的部分。这是拥有包罗万象的源文件的危险。
-
如果您为他们生成的代码使用了您生成的“通用库”,为什么不简单地为他们的项目提供 .pas 文件,并为他们提供编译的 DCU 文件你的“公共图书馆”?
-
任何特定于所有客户的东西,把它放在你自己的组件包中,只提供给他们没有源代码的 BPL。然后,剩余的来源将是客户特定的。但是,如果您有特定于某个客户的代码,而您不希望其他特定客户看到,那么您还必须为每个客户的代码生成 BPL。这仍然是一项艰巨的任务,祝您好运。
-
或者您可以使用 DLL 执行类似的解决方案。请记住,您希望为每个库指定一个唯一的名称,无论是哪种类型,它都是特定于每个客户的,但不会泄露客户的名字。像客户 ID 一样用作标识符,只有您知道 ID 是为谁服务的。