<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-9537945.post8083207598809533436..comments</id><updated>2007-11-02T20:55:50.790-05:00</updated><title type='text'>Comments on DeploymentEngineering.com - The Blog: InstallScript Custom Actions are GOOD</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.deploymentengineering.com/feeds/8083207598809533436/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html'/><author><name>Christopher Painter</name><uri>http://www.blogger.com/profile/12167478740431444267</uri><email>chrpai@yahoo.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9537945.post-7028929964770003856</id><published>2007-11-02T20:55:00.000-05:00</published><updated>2007-11-02T20:55:00.000-05:00</updated><title type='text'>InstallScript mostly looks like C to me, although ...</title><content type='html'>InstallScript mostly looks like C to me, although you are right there are aspects that look like Pascal and later  VB and C#.  I guess it all looks the same to me after awhile.  ( I've done C,VB/Script,Powerbuilder,Deplhi,C#/VB.NET over the years... )&lt;BR/&gt;&lt;BR/&gt;Being a Domain Specific Language, InstallScript does lack certain capabilities.  For example, there is no concept of function pointers and as you point out callback patterns ( although the LaunchAppAndWait does have a callback mechanism for calling EXE's ).&lt;BR/&gt;&lt;BR/&gt;I've never actually had the need for this, but I suppose if you did, you could write a Type 1 CA in C++ and invoke it passing the MSI Handle.  Once inside your C++ you could do the callback and pump messages back to the UI via the installer handle.&lt;BR/&gt;&lt;BR/&gt;Do you have a use case for this or was it just an observation?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/7028929964770003856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/7028929964770003856'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1194054900000#c7028929964770003856' title=''/><author><name>Christopher Painter</name><uri>http://www.blogger.com/profile/12167478740431444267</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='00703071804906658959'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-9537945.post-1285654427073380603</id><published>2007-11-02T19:46:00.000-05:00</published><updated>2007-11-02T19:46:00.000-05:00</updated><title type='text'>Hmmm, I always thought InstallScript resembled Pas...</title><content type='html'>Hmmm, I always thought InstallScript resembled Pascal...&lt;BR/&gt;&lt;BR/&gt;Some interesting points were raised, however, remember that even InstallScript has 'UseDLL()'. If you have to interact with the system, then there are many parts of the Windows API that IS cannot  properly deal with (callback functions?).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/1285654427073380603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/1285654427073380603'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1194050760000#c1285654427073380603' title=''/><author><name>Presutti</name><uri>http://www.blogger.com/profile/02039722574801193427</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-9537945.post-1833456754066894140</id><published>2007-10-31T09:50:00.000-05:00</published><updated>2007-10-31T09:50:00.000-05:00</updated><title type='text'>Don't forget that it's easier to debug (Build -&gt; D...</title><content type='html'>Don't forget that it's easier to debug (Build -&gt; Debug versus set environment variable, launch installer, attach debugger, debug installation, forget to remove environment variable, cancel installation, delete environment variable, need it later, blah blah blah) and the language has patterns for almost any imaginable situation including leveraging .NET Custom code.&lt;BR/&gt;&lt;BR/&gt;That said, it's been nearly impossible to decompile the bytecode for quite a long time.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/1833456754066894140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/1833456754066894140'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1193842200000#c1833456754066894140' title=''/><author><name>ShadowWolf</name><uri>http://www.blogger.com/profile/17170306422408594103</uri><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-9537945.post-976351641605254756</id><published>2007-10-25T23:48:00.000-05:00</published><updated>2007-10-25T23:48:00.000-05:00</updated><title type='text'>Right.  I only do C++ custom actions as they are e...</title><content type='html'>Right.  I only do C++ custom actions as they are easy.  I was wondering if your CA logic is out in the open with Installscript.  Probably just a mater of time before Installshield or someone else releases a decompiler.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/976351641605254756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/976351641605254756'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1193374080000#c976351641605254756' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-9537945.post-4267134147181394075</id><published>2007-10-25T06:13:00.000-05:00</published><updated>2007-10-25T06:13:00.000-05:00</updated><title type='text'>In the old days there used to be an InstallScript ...</title><content type='html'>In the old days there used to be an InstallScript decompiler but as far as I know, there isn't these days.&lt;BR/&gt;&lt;BR/&gt;Some people like obfusacated code and some people like transparent code.   InstallShield ( and C++ ) leans towards the first while scripting languages and .NET lean towards the latter.&lt;BR/&gt;&lt;BR/&gt;If you make your CA data driven, you can somewhat expose the behavior via the table data, but the implementation is still private inside the CA.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/4267134147181394075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/4267134147181394075'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1193310780000#c4267134147181394075' title=''/><author><name>Christopher Painter</name><uri>http://www.blogger.com/profile/12167478740431444267</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='00703071804906658959'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry><entry><id>tag:blogger.com,1999:blog-9537945.post-4210951908457880630</id><published>2007-10-24T23:40:00.000-05:00</published><updated>2007-10-24T23:40:00.000-05:00</updated><title type='text'>is it possible to extract the original InstallScri...</title><content type='html'>is it possible to extract the original InstallScript out of a compiled InstallScript CA?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/4210951908457880630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9537945/8083207598809533436/comments/default/4210951908457880630'/><link rel='alternate' type='text/html' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html?showComment=1193287200000#c4210951908457880630' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.deploymentengineering.com/2007/10/installscript-custom-actions-are-good.html' ref='tag:blogger.com,1999:blog-9537945.post-8083207598809533436' source='http://www.blogger.com/feeds/9537945/posts/default/8083207598809533436' type='text/html'/></entry></feed>