我们办公室中有一个专有应用程序,运行在Windows上,缺少提供自定义数据叠加层的某些功能。我们只想在对话框中突出显示一些数据。
由于没有可用的插件机制,我正在考虑在应用程序上运行一个单独的图形层(通常是透明的)来运行该应用程序,但是当对话框打开时,我想修改该层以突出显示特殊数据。
由于它是Java应用程序,因此可以通过反编译来完成,但是如果它是签名的jar,该怎么办?无论如何,我对不是Java特有的解决方案更感兴趣。
很抱歉,只提供概述,请随时要求澄清/其他信息!
[编辑]
我们以“慢”的方式做到了。要求生产者修改它并等待一个月。
无论如何,我对解决方案仍然很感兴趣
最佳答案
恕我直言,签名的jar并不是什么大问题,除非此专有程序可以验证其中的签名。但是即使在这种情况下,由于您将拥有源,因此可以删除此类验证。
另一种方法是使用您自己的ClassLoader,拦截要更改的类并将其替换为您自己的类。例如,您用自己的myJTextField替换了JTextField,它突出显示了特殊数据。
关于java - 运行带有自定义图形层的专有[java]应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30149693/