Skip to main content
1-Visitor
November 11, 2017
Question

ProCurrentWorkspaceExport - How to cleanup session before use

  • November 11, 2017
  • 1 reply
  • 1346 views

Hi all,

 

I've a Pro/Toolkit application that makes some stuff and store workspace content at the end.

Everything works fine except when a model stay in Creo session bacause ProCurrentWorkspaceExport() does'nt support this (Toolkit doc) and return a PRO_TK_E_BUSY (-38) code

I'm trying to remove all model from memory but at least one stay in session

I've tried various functions and tricks:

 * ProSessionMdlList + ProMdlErase

 * ProSessionMdlList  + ProMdlEraseAll

 * ProEventProcess() => Forbiden

 * ProMdlEraseNotDisplayed()

 * Start another DLL that remove objects

 * Start another DLL that runs macro to erase not displayed objects

I could try to launch another Java app but not sure that it's work (I'll do that waiting your answers...)

 

Any idea will be appreciate 🙂

 

Regards,

 

Fred

 

1 reply

1-Visitor
November 17, 2017

Well it is difficult if your application is syncronous.

You must have observed this already so just FYI:

All your actions takes place when control goes back to Creo.

So if you want to 1. Close/clear a model 2. do some stuff and 3. re-open it
then it will do all that but your re-opened model might get closed/cleared when you return to creo.

 

Well if you just want to clear the session then I'd like to suggest this

1. Close the window of model

2. make sure its not been used by any other model (like drawing other wise you will need to close the drawing first) and then

3. erase the model from session.

 

Hope that help!

If you find better solution then please share!

Madhavi