1. Tareq Haschemi
  2. PowerBuilder
  3. Monday, 26 March 2018 12:18 PM UTC

Currently I am trying to execute the IDE compiler via the command line. The problem is that although it compiles correctly, it does not set an icon. If I start the IDE by hand and press the Deploy button, it builds me correctly and the icon is also displayed in the .exe

There are other requests here, but nothing helped.

 

Running Command: 

"C:\Program Files (x86)\Appeon\PowerBuilder 17.0\pb170.exe" /W "C:\xxxxxxxx\xxxxxrunner\xx.pbw" /t "C:\xxxxxxxx\xxxxxrunner\xx.pbt" /d /out pbide.log

 

Richard Brady Accepted Answer Pending Moderation
  1. Thursday, 31 January 2019 10:27 AM UTC
  2. PowerBuilder
  3. # 1

Is there a suggested workaround for this?

We build from exported source files and previously used ORCAscript via PBORCA to create the PBLs and perform the compilation. ORCA allowed us to provide the icon file as a parameter to the build executable command.

Now we have moved to PB 2017 R3 and are switching to PBC (AutoCompiler) but it does not allow us to specify an exe icon.

I've tried reverting to our old build scripts using PBORCA with the pborc170.dll but the build crashes. AFAIK PBORCA is not maintained anymore.

I'll have to reimplement in pure ORCAscript which is a shame. I was hoping PBC would be more reliable. ORCA doesn't handle dependencies and we currently have to pre-regenerate specific PBLs and objects (and maintain that as code changes) or the build fails.

 

EDIT:

I'm going to use RCEdit to set the exe icon after compilation, straight forward to implement but another dependency for my build scripts.

It's a real shame this has been missed from PBC, fingers crossed for a future version.

Comment
There are no comments made yet.
Roland Smith Accepted Answer Pending Moderation
  1. Monday, 26 March 2018 12:45 PM UTC
  2. PowerBuilder
  3. # 2

Unfortunately this forum does not let you see the question while you are typing in an answer.

My guess is that the commandline build is probably using ORCA functions to build the exe and the ORCA function that builds the exe requires icon file name as one of the arguments. If they have code in there to extract the icon name from the .pra and pass it to the ORCA function, it could be an issue with it not being able to find the file. An alternate explanation could be that they didn't bother passing the icon name. I never use the commandline so this is all speculation.

Comment
  1. David Peace (Powersoft)
  2. Tuesday, 27 March 2018 13:15 PM UTC
Yes Roland



"Unfortunately this forum does not let you see the question while you are typing in an answer." is particularly irritating....

  1. Helpful
There are no comments made yet.
Roland Smith Accepted Answer Pending Moderation
  1. Monday, 26 March 2018 12:35 PM UTC
  2. PowerBuilder
  3. # 3

This is a long standing issue. The root cause goes all the way back to the early versions of PowerBuilder. When you set the icon in the application painter, it is not stored in the application source code. Because of that, any process that rebuilds a target from source code will not know what the icon name is.

When you save an object, it updates the source and compiled versions of the object. The two parts are stored separately in the PBL. For the application object, the source is called appname.sra and the compiled version is called appname.apl. There is another binary object in the PBL named appname.pra that contains the icon name and the default font settings.

I put in a feature request to move the icon name to the application source, lets hope they implement it.

Comment
  1. Chris Pollach @Appeon
  2. Monday, 26 March 2018 20:04 PM UTC
Hi Tareq;



   What build of PB 2017 are you using?



Regards ... Chris

  1. Helpful
  1. Tareq Haschemi
  2. Monday, 26 March 2018 21:27 PM UTC
Hi,



 



powerbuilder 2017 rev2. The newest Version...

  1. Helpful
  1. Tareq Haschemi
  2. Monday, 26 March 2018 21:28 PM UTC
About 100mb and ~10 pbl 

  1. Helpful
There are no comments made yet.
  • Page :
  • 1


There are no replies made for this question yet.
However, you are not allowed to reply to this question.