Delphi 有多少人滥用了你的';带源';购买选择权?

Delphi 有多少人滥用了你的';带源';购买选择权?,delphi,components,activex,Delphi,Components,Activex,我有兴趣找到答案。在Delphi中,从购买组件开始,默认情况是能够使用源代码购买组件(即使这可能是一个稍微昂贵的选项)。这在Delphi中是有意义的,原因有很多,首先,Borland带头为每次安装Delphi提供了完整的VCL源代码,但也认为有源代码是必不可少的,因为升级Delphi时,您必须重新编译,有时作者会倒闭 我很想知道是否有任何Delphi组件作者有理由后悔“带源代码”销售他们的组件?是否有人试图根据您的代码发布竞争产品,或将其冒充为自己的产品 我问这个问题的原因是,在购买Active

我有兴趣找到答案。在Delphi中,从购买组件开始,默认情况是能够使用源代码购买组件(即使这可能是一个稍微昂贵的选项)。这在Delphi中是有意义的,原因有很多,首先,Borland带头为每次安装Delphi提供了完整的VCL源代码,但也认为有源代码是必不可少的,因为升级Delphi时,您必须重新编译,有时作者会倒闭

我很想知道是否有任何Delphi组件作者有理由后悔“带源代码”销售他们的组件?是否有人试图根据您的代码发布竞争产品,或将其冒充为自己的产品


我问这个问题的原因是,在购买ActiveX控件或.NET程序集时,提供“带源代码”选项似乎仍然是个例外,而不是常规。也许人们不希望源代码用于恶意目的的一个保证可能会说服更多的组件编写者允许源代码与组件一起购买。

除非组件编写者使用某种形式的模糊处理,否则任何.Net程序集的源代码都可以通过使用reflector获得


我已经在Microsoft和其他供应商的程序集上使用了这个工具来跟踪代码中的问题。在某些情况下,我会继续修复问题并重新编译;但这样做的后果自负。

我有一个问题,尤其是在.Net蒙皮库方面。我发现没有一个足够好的代码可以包含一个相当经济的价格。我说的是超过1000美元价格线的价格,我认为这对于一个自由开发者来说是天文数字,仅仅是一个软件。但是,在每种语言中,那些更难实现的东西也是最昂贵的,所以在实现类似于你自己的东西的困难中,这两个因素是有联系的。我知道这不是你问题的答案,但我自己的看法。

我个人没有这方面的经验,但我知道源代码水印是可用的,一些供应商已经使用过它。不知道会有多成功


我从来没有听说过有人发布与其他商业供应商的源代码相竞争的产品。然而,它确实经常发生在开源软件中

我有这方面的个人经验。我曾经为Delphi销售一个组件和函数库(Clipper Functions for Delphi,又名CFD);我们从96年的版本1升级到2000年的版本5,当时我接受了一份不允许兼职的工作。到年底,我们有5000多名注册用户;我仍然为他们中的很多人提供免费更新和偶尔的bug修复


我从来没有任何理由不提供来源。事实上,没有来源就没有购买CFD的选择。我不会购买任何商业的Delphi组件库,我的应用程序将依赖于无源代码,原因正是你引用的(重新编译新的Delphi版本和供应商离开)。

对于我在过去10年中开发的所有Delphi组件,始终包含完整的源代码。然而,在Delphi中使用兼容的二进制(DCU)格式(类似于Java和.NET)作为试用版或低成本的“个人版”——由于缺少源代码,这些版本不会吸引真正的商业开发人员,这将是一个巨大的优势。为Delphi 5、6、72006、2007和2009编译DCU是可能的(如果有Delphi许可证的话),但是管理这么多不同的代码版本需要为自动构建和打包系统做大量的工作…

如果您想了解它们是如何做一件特定事情的,这可能是可行的,但是,如果你想完全重建应用程序的源代码,这是非常不切实际的。我不知道你为什么认为这是不切实际的。通常所有的东西都被编译成几个程序集,这些程序集很容易被拆开。你用什么方法来重新编译你没有的源代码?我从来没有这样做过,但我无法想象你正在从reflector复制代码…将程序集加载到reflector中。在部件上单击鼠标右键,然后选择“导出”。它将为您重新创建整个项目。此时,您可以修改任何需要的内容,然后使用visual studio重新编译程序集。我想您的意思是“我从来没有任何理由不提供源代码”?:-)