Path: csiph.com!aioe.org!.POSTED!not-for-mail From: =?UTF-8?Q?Arne_Vajh=c3=b8j?= Newsgroups: comp.lang.java.programmer Subject: Re: Need to modify a legacy closed app Date: Wed, 30 May 2018 21:19:29 -0400 Organization: Aioe.org NNTP Server Lines: 37 Message-ID: References: NNTP-Posting-Host: PBuS014lhzVyHjLbXmo/ZQ.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 X-Notice: Filtered by postfilter v. 0.8.3 Content-Language: en-US Xref: csiph.com comp.lang.java.programmer:38304 On 5/30/2018 3:38 PM, Michael Keith wrote: > I am tasked with modifying a legacy app which consists of an .exe file > and several hundred .jar files. Is is launched by starting the .exe, > which then - somehow - initialises the whole darn thing. This presents > the first difficulty, as I have no idea what the 'main' .jar file is. > > The task at hand consists of adding one button (or a clickable image > or some such) plus the action to be eventually performed to a certain > pane - so all I need is the name (or probably the class hierarchy) of > this particular pane. > > I am hoping for a tool / class which, when hovering over a certain gui > element knows (and can display) this hierarchy. I could then inject > the code to start this class in some suitable constructor and be a lot > farther. > > If anyone here knows of a way to achieve what I am after this would be > highly appreciated. > > Oh, one more thing maybe: I am not a Java guy at all (knowing about > code injection only because I read an article about it some years ago > - and carelessly mentioned it to my boss when discussing our problem, > which caused it to land right in my lap), so you might consider using > "simple language" when answering. :) Check if you have the source code and build scripts somewhere. Yes => change code, rebuild, test and deploy. No => 1) Check if you have legal right to reverse engineer and modify code. 2) Get a Java decompiler and generate source code from the Java byte code. 3) change code, rebuild, test and deploy. Arne