Assemblies driving me mad

Posted by jmls on 21-Mar-2011 13:54

AAArrrrgggggghhhhhhhhhhhh!

Been bitten by the "bloody assemblies won't work unless in the root" issue

I have all my .dll files and assemblies.xml in the root directory of my project. All's fine

Decided that there was too much fluff in there, and would be better in a subdirectory. So I moved all the .dll and assemblies.xml into a subdirectory called dll.

I added dll to the project, set the assemblies property in Project->Properties->OpenEdge->Assemblies to point to the dll folder (platform:/resource/MyApp/dll)

I added -assemblies (full pathname to dll directory) to the startup parameters of Openedge

I closed the project

I closed OEA

I restarted OEA, reopened the project

NADA. Nothing. Bugger all. No "Assembly references" in teh resources tab. No form will now load.

What have I missed ?

All Replies

Posted by Admin on 21-Mar-2011 14:01

Are you on Service Pack 3?

Do you have other startup parameters in place? There was an issue, fixed in SP3 that some combinations of startup parameters cause -assemblies to get ignored by OEA. Like -assemblies and -IOEverywhere didn't like each other (Bug OE00200394).

Posted by jmls on 21-Mar-2011 14:11

10.2B SP03

-Mm 8192 -d dmy -assemblies "C:\Users\Julian\data\development\MyApp\dll"

oh, and what is -IOEverywhere ?

Posted by Admin on 21-Mar-2011 14:21

10.2B SP03

Poor man For me SP3 did the trick...

oh, and what is -IOEverywhere  ?

 

The best new thing in 10.2B02:

http://communities.progress.com/pcom/message/101072#101072

(see Laura's post from 09.08.2010)

Posted by jmls on 21-Mar-2011 14:31

So, if I'm on SP3 already then I am SOL ?

Oh, and thanks for the reminder about that parameter. Damned if I know

how I forgot about it.

Posted by Peter Judge on 21-Mar-2011 14:36

jmls wrote:

AAArrrrgggggghhhhhhhhhhhh!

Been bitten by the "bloody assemblies won't work unless in the root" issue

I have all my .dll files and assemblies.xml in the root directory of my project. All's fine

Decided that there was too much fluff in there, and would be better in a subdirectory. So I moved all the .dll and assemblies.xml into a subdirectory called dll.

I added dll to the project, set the assemblies property in Project->Properties->OpenEdge->Assemblies to point to the dll folder (platform:/resource/MyApp/dll)

I added -assemblies (full pathname to dll directory) to the startup parameters of Openedge

I closed the project

I closed OEA

I restarted OEA, reopened the project

NADA. Nothing. Bugger all. No "Assembly references" in teh resources tab. No form will now load.

What have I missed ?

If this is only a problem in  Architect, make sure the project doesn't have the 'Use default location' option checked. This is in Project > Properties > OpenEdge > Assemblies (near the top of the wizard page).

-- peter

Message was edited by: Peter Judge

This is a per-project setting

Posted by Peter Judge on 21-Mar-2011 14:36

You can check whether you're running into Mike's issue in OEA. Go to the debug view; in there, right-click on the executable, and select Properties. This will show you the exact command line used to invoke the AVM. Use this to confirm which value for the -assemblies parameter is being used.

-- peter

Posted by Admin on 21-Mar-2011 14:36

So, if I'm on SP3 already then I am SOL ?

 

SOL???

If that means time to call tech support, then SOL

Posted by jmls on 21-Mar-2011 15:41

Will do when I get home, currently in a&e sorting out some broken bones...

On 21 Mar 2011 19:45, "Peter Judge"

Posted by jmls on 21-Mar-2011 17:41

back from A&E. Sprain only My boy has learnt the most important

lesson that all boys at some stage learn about riding a bike :

"Never, ever, hit the front brake first ....."

Now, where the hell is this view you are talking about ? I can't find

any view that shows an executable ...

Posted by jmls on 21-Mar-2011 17:47

the plot thickens.

Project->properties->Openedge->Assemblies shows a list of dlls. If I manually remove one of the lines from the assemblies.xml file, this line is then removed from the list. If I compile the .cls file from the code view, it compiles ok. It's the Visual designer that refuses to load

Posted by Admin on 21-Mar-2011 17:51

Now, where the hell is this view you are talking about ? I can't find

any view that shows an executable ...

I guess you have to do that while debugging ABL code.

Posted by Admin on 21-Mar-2011 17:51

Project->properties->Openedge->Assemblies shows a list of dlls. If I manually remove one of the lines from the assemblies.xml file, this line is then removed from the list. If I compile the .cls file from the code view, it compiles ok. It's the Visual designer that refuses to load

That's exacly the plot of the error I mentioned above: The -assemblies parameter was set for the ABL runtime, hence the compilation works, but the OpenEdge Architect Visual Designer does not know about it, hence no "Referenced Assemblies" node in the Resources view and the issues with VD.

Posted by jmls on 21-Mar-2011 18:01

got it.

-Mm 8192

in the startup option make the referenced assemblies not appear.

Remove it, and all works again.

crap.

At least I have a solution.

Can you confirm that this does not affect normal runtime ?

Thanks for the heads up and pointers

Posted by Admin on 21-Mar-2011 18:11

in the startup option make the referenced assemblies not appear.

Remove it, and all works again.

 

Please log it as a bug! I've had other combinations of startup parameters that killed VD - but they were fixed with SP3. Looks like there is still something wrong...

Can you confirm that this does not affect normal runtime ?

From my small corridor of experience, it won't affect a normal runtime.

Posted by jmls on 21-Mar-2011 18:34
Posted by Peter Judge on 22-Mar-2011 08:04

jmls wrote:

back from A&E. Sprain only My boy has learnt the most important

lesson that all boys at some stage learn about riding a bike :

"Never, ever, hit the front brake first ....."

I have an extremely painful memory of learning same lesson, although I "merely" slid forward onto the handlbars.

Now, where the hell is this view you are talking about ? I can't find

any view that shows an executable ...

When you run a run config (whether it's run or debug), you can open a Debug View, which shows the running exe (if you will). Alternatively, you can switch to debug mode, and the top left (by default) is the same Debug view. Pics below. Note that I had to manually add the Debug View to my OE Editor perspective.

Debug View:

debug-view.png

Perspective:

debug-perspective.png

-- peter

Posted by egarcia on 22-Mar-2011 09:26

I just wanted to mention that the Process Explorer utility from Windows Sysinternals can also be used to see the command line used by a process.

This thread is closed