目前,我有一个MFC C ++ visual studio项目,是build立在一个DLL。 我们称之为FinalDLL 。
我需要这个FinalDLL是可configuration的。 所以,我想要一个GUI,以便用户可以根据通过GUI进入的信息生成FinalDLL 。 请考虑我不想在任何地方提供资源。
我不清楚如何整合这些步骤。 我想到的解决scheme是在我的GUI中有一个button,所以当点击时, FinalDLL根据通过GUIinput的信息生成。 有没有可能做这样的事情? 可能我需要另一个DLL库,因为通过GUIinput的信息可以调用FinalDLL源代码中使用的函数 。
是控制 – 在Windows上input一个普遍接受的快捷方式来表示“接受”?
如何在使用箭头导航的bash脚本中创build接口?
Java服务与GUI工具
如何在MFC中禁用CListCtrl的水平ScrollBar?
实时logging
我如何创build我自己的menuconfig GUI?
当对话框重新打开时,访问键应该保持下划线?
哪里可以findWindows应用程序的用户界面(UI)devise模式?
访问数组重新创build对象中的对象?
对此的解决方案将是非常复杂和复杂的,主要是因为你不想公开源代码的DLL。
基本上你需要编译这些源文件,每当你想要生成DLL,而没有用户访问它们。
其次,你需要将这些文件存储在应用程序的某个地方,并以加密的形式存储,这样黑客就不会只看你的应用程序二进制文件并提取DLL的源代码。
作为用户端的一个先决条件,他需要有一个兼容的Visual Studio安装,它将被用于编译源代码文件。
DLL生成器应用程序需要做的是通过应用程序将呈现的形式,随时编译这些源代码文件以及自定义的文件。
所以你需要做什么(由于复杂的要求,列表可能并不完整):
收集构建项目时Visual Studio执行的所有编译器/链接器命令
将所有源代码文件以加密的形式存储到您的应用程序中。 现在,如果你想允许你的应用程序解码这些文件,那么你需要将加密密钥存储在应用程序中,并对其进行混淆处理,这样就不那么容易找到,或者让应用程序与你的服务器通信,并要求加密密钥通过https(这是一个更安全的方法,但是这不是100%的防弹,坚持/训练的黑客仍然可以偷看你的应用程序使用的内存)
用户填写所有DLL生成细节后,应用程序将需要解密源代码文件,更新受自定义参数影响的源代码文件,并使用在步骤#1收集的命令启动构建过程。 编译器/链接器应该允许从stdin读取,所以你将使用管道将源代码内容写入编译器/链接器stdin,并从stdout中获得编译/链接的对象。
正如我所说的,解决方案不是很好,主要的问题是用户安装一个带有与你的机器兼容的编译器的Visual Studio,否则你在第一步收集的命令将不起作用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。