<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Copy Folder Lee Mac in Visual LISP, AutoLISP and General Customization Forum</title>
    <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7557611#M111893</link>
    <description>&lt;P&gt;Or is it possible to define some files to be ignored (.dll)?&lt;/P&gt;</description>
    <pubDate>Mon, 20 Nov 2017 08:46:07 GMT</pubDate>
    <dc:creator>C.Utzinger</dc:creator>
    <dc:date>2017-11-20T08:46:07Z</dc:date>
    <item>
      <title>Copy Folder Lee Mac</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7557504#M111892</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;HI&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'm trying to copy the folder with&amp;nbsp;a Ribbonmenu&amp;nbsp;from one place to another&amp;nbsp;(simulating a&amp;nbsp;user making update).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;But i get&amp;nbsp;nil, i think because AutoCAD is still open and of the .dll files.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is there a possibility to know why it gets nil?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I use the Lee Mac function for copy the folder:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;(defun LM:copyfolder ( src des )
    (vl-mkdir des)
    (apply 'and
        (append
            (mapcar
                (function
                    (lambda ( file )
                        (vl-file-copy (strcat src "\\" file) (strcat des "\\" file))
                    )
                )    
                (vl-directory-files src nil 1)
            )
            (mapcar
                (function
                    (lambda ( dir )
                        (LM:copyfolder (strcat src "\\" dir) (strcat des "\\" dir))
                    )
                )
                (vl-remove "." (vl-remove ".." (vl-directory-files src nil -1)))
            )
        )
    )
)&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Mon, 20 Nov 2017 07:56:52 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7557504#M111892</guid>
      <dc:creator>C.Utzinger</dc:creator>
      <dc:date>2017-11-20T07:56:52Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Folder Lee Mac</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7557611#M111893</link>
      <description>&lt;P&gt;Or is it possible to define some files to be ignored (.dll)?&lt;/P&gt;</description>
      <pubDate>Mon, 20 Nov 2017 08:46:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7557611#M111893</guid>
      <dc:creator>C.Utzinger</dc:creator>
      <dc:date>2017-11-20T08:46:07Z</dc:date>
    </item>
    <item>
      <title>Re: Copy Folder Lee Mac</title>
      <link>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7568554#M111894</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;OK! This way it works&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;(vl-load-com)

(defun LM:copyfolder ( src des ovr / fso rtn )
    (if (setq fso (vlax-create-object "scripting.filesystemobject"))
        (progn
            (setq rtn
                (not
                    (or (zerop (vlax-invoke fso 'folderexists src))
                        (vl-catch-all-error-p
                            (vl-catch-all-apply 'vlax-invoke
                                (list fso 'copyfolder src des (if ovr :vlax-true :vlax-false))
                            )
                        )
                    )
                )
            )
            (vlax-release-object fso)
            rtn
        )
    )
)


(defun spi:update ( / FSO localfolder oldfolder)

      (setq localfolder (findfile "SPI_Ribbon.cuix")
            localfolder (vl-filename-directory localfolder)
            oldfolder (strcat localfolder "_alt"))

      (cond (*akttoday*
              (alert "Bitte AutoCAD neustarten und nochmals aktualisieren!")
              (exit))
            ((vl-file-directory-p oldfolder)
              (setq FSO (vlax-create-object "Scripting.FileSystemObject"))
              (vlax-invoke FSO "DeleteFolder" oldfolder :vlax-true)
              (vlax-release-object FSO))  
      )

      (cond ((and (not *akttoday*)(vl-file-directory-p localfolder))
              (setq *akttoday* 1)
              (vl-file-rename (strcat localfolder "\\") (strcat oldfolder "\\"))
              (LM:copyfolder "P:\\CAD\\AutoCAD\\AutoCAD_SPI_Ribbon" localfolder T)
              (alert "Ribbon erfolgreich aktualisiert! \n\nMenüänderungen erst nach AutoCAD-Neustart vorhanden."))
            (*akttoday*)
            (T (alert "Ordner --&amp;gt;  \"AutoCAD_SPI_Ribbon\" \nwurde nicht gefunden!"))
      )

  (prin1)
) ; end of defun&lt;/PRE&gt;</description>
      <pubDate>Thu, 23 Nov 2017 15:28:31 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/copy-folder-lee-mac/m-p/7568554#M111894</guid>
      <dc:creator>C.Utzinger</dc:creator>
      <dc:date>2017-11-23T15:28:31Z</dc:date>
    </item>
  </channel>
</rss>

