ODCL can upgrade from lisp???

Started by TopoWAR, August 12, 2013, 03:13:58 PM

Previous topic - Next topic

TopoWAR

Hello to all! I use for my software ODCL runtime, the question is: can update only the arx located in the Common Files folder? or you need to run Windows Installer. MSI? you can create something from lisp to run the update of ODCL? thank you very much and congratulations on such a good job.
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

It's important to perform the updates via Windows Installer so that reference counts get maintained correctly, otherwise you could break other OpenDCL applications that may be installed now or in the future. You can start the installer from lisp. There have been past discussions about this. If you search the discussion group for "msiexec" you should find those past threads.

TopoWAR

http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

TopoWAR

owenwengerd , where the discussion group "msiexec"???
excuse my ignorance :(
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

Here are two threads that may help:

http://www.opendcl.com/forum/index.php?topic=1641.15
http://www.opendcl.com/forum/index.php?topic=1142.0

Note the use of (startapp) to run msiexec.exe, which is Windows Installer. You can run msiexec.exe in a command shell to see its command line options.

TopoWAR

Hello, I tried to update using the code ODCL:

Code (autolisp) Select
(startapp "msiexec.exe" (strcat "/i \"" msi "\" /qn"))

but it seems that it takes OpenDCL runtime autocad is closed! I tried to download the ARX before the upgrade but does not work, must be closed to proceed cad? if so then you can not upgrade from using lisp. msi
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

I'm not sure I understand correctly. If you mean that OpenDCL Runtime cannot be upgraded while it is in use, then yes, that is correct. You must upgrade before the OpenDCL Runtime is loaded, else unload it manually before upgrading. I will see if I can add some code in the _MasterDemo sample app to upgrade at runtime, maybe that will help.

TopoWAR

 owenwengerd , thanks for the answer, that would be amazing ODCL could update from lisp at runtime, I'll be on the lookout for this, thank a teacher!

sorry but use a translator!
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

The OpenDCL 7.0 RC2 build includes enhancements to the [Check for Update] button in the _MasterDemo sample. It now checks for an update and if one is available, allows you to download and install it.

TopoWAR

owenwengerd ,
Hello, I had previously made ââ,¬â€¹Ã¢â,¬â€¹a code very similar to yours, with this line sets
Code (autolisp) Select
(foreach project (dcl_GetProjects) (dcl_Project_Unload project T))
I tried to upgrade to 7.0.1.4 7.0.1.2 ODCL but asks me to close the autocad, I run the msi with ODCL version 7.0.1.4 already installed in autocad but no longer asks me to close the autocad, perhaps changing to run the msi with ODCL in execution comes from version 7.0.1.4 onwards? thanks
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

The reason it can work without closing AutoCAD is because (*ODCL:Vanish) unloads OpenDCL after unloading all projects. You can do the same in previous versions.

TopoWAR

#11
[owenwengerd , gracias, I have another question, this is their code

Code (autolisp) Select
  (dcl_SendString "(*ODCL:Vanish)\n")
  (startapp (strcat "msiexec.exe /i " msipath))
  (dcl_Form_Close _MasterDemo_Update 1)



is possible that it works well the function (* ODCL: Vanish) because at that time being used dcl_SendString and later dcl_Form_Close, personally for me worked well the upgrade chooses to use (* ODCL: Vanish) after downloading the form (dcl_Form_Close _MasterDemo_Update 1), do you think?

I use this code works perfect, I add the supplement dos_exewait dos_lib function, to do wait until you finish autocad ODCL installed.
Code (autolisp) Select
(dcl_Form_Show TopoWAR|update_UPDATE)
  (prompt "\n ** unload ARX OpenDCL**") (princ)
  (unload_odcl)
  (princ "\nIniciando Actualización, por favor espere... mientras se actualiza..")
  (dos_exewait (strcat "msiexec.exe /i " (strcat RUTA_TOPOWAR "\\Actualizaciones\\OpenDCL.Runtime.msi")))
  (command "_opendcl")
  (princ)
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.

owenwengerd

I don't think it's a good idea to lock up AutoCAD while the installer runs, but I'm glad you got it working.

TopoWAR

owenwengerd ;D teacher thank you, I'll consider your advice.
http://topowar.org - Programa para Topografía y Catastro para Costa Rica.