amma.NETtami http://blogs.ugidotnet.org/fgiossi/Default.aspx .NET walkabout it-IT Francesco Giossi Subtext Version 2.6.0.0 amma.NETtami http://blogs.ugidotnet.org/images/RSS2Image.gif http://blogs.ugidotnet.org/fgiossi/Default.aspx 77 60 L'incredibile vulnerabilità di SVN Sicurezza http://blogs.ugidotnet.org/fgiossi/archive/2009/09/25/lincredibile-vulnerabilita-di-svn.aspx <p>C'è di che ridere (e sto ridendo parecchio), ma la cosa è MOLTO seria.</p> <p>SmashingMagazine spiega per filo e per segno quale è il <a href="http://www.smashingmagazine.com/2009/09/25/svn-strikes-back-a-serious-vulnerability-found/">problema che affligge SVN</a> e come questo generi non pochi grattacapi a coloro i quali non hanno pensato a come proteggersi.</p> <p>Della serie: cerchi di blindare tutta la casa, ma hai dimenticato che la porta principale va SEMPRE chiusa a chiave.</p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/97111.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2009/09/25/lincredibile-vulnerabilita-di-svn.aspx Fri, 25 Sep 2009 13:51:11 GMT http://blogs.ugidotnet.org/fgiossi/archive/2009/09/25/lincredibile-vulnerabilita-di-svn.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/97111.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/97111.aspx Editare file di Excel 2007 da VBA o VB6 Visual Basic VBA VBA VBA http://blogs.ugidotnet.org/fgiossi/archive/2009/05/08/editare-file-di-excel-2007-da-vba-o-vb6.aspx <p>Interessante articolo su come editare il formato OPENXML di Excel 2007 utilizzando il buon vecchio VBA o, per estensione, il sempre valido Visual basic 6.</p> <p><font face=""><a href="http://www.jkp-ads.com/articles/Excel2007FileFormat02.asp">http://www.jkp-ads.com/articles/Excel2007FileFormat02.asp</a></font></p> <img src="http://blogs.ugidotnet.org/fgiossi/aggbug/96133.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2009/05/08/editare-file-di-excel-2007-da-vba-o-vb6.aspx Fri, 08 May 2009 10:44:11 GMT http://blogs.ugidotnet.org/fgiossi/archive/2009/05/08/editare-file-di-excel-2007-da-vba-o-vb6.aspx#feedback 1 http://blogs.ugidotnet.org/fgiossi/comments/commentRss/96133.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/96133.aspx How to zip a file using Visual Basic 6 and the Windows Shell Visual Basic VBA http://blogs.ugidotnet.org/fgiossi/archive/2009/03/27/how-to-zip-a-file-using-visual-basic-6-and.aspx <p>When it was a matter of zipping a file, I always choosed the easy way: find a thirdy part activex or dll which could do the job for me.</p> <p>This time, I wanted to find my way to zip a file using Visual Basic 6 (or Visual Basic for Application - aka VBA) and the windows shell. The consderation came from the fact that, since Windows XP,  the support of zipping-unizzping files is a native feature of the OS. </p> <p>After a long search and multiple fixes, I finally came up with a stable solution which I'm going to quickly explain and post right here. The source code is a mix of pieces of code collected here and there. the only att</p> <p>Attached to the post it's a zip file containing a working example. It zips the files contained in the <strong>testFolder</strong> directory.</p> <p><a href="http://www.zshare.net/download/57749765c545261f/">Click here</a> to download the zip.</p> <p>I'm going to post just the clsZip class I used to support my zipping project.</p> <pre>clsZip.cls</pre> <pre style="BACKGROUND: #f6f8ff; COLOR: #000020"><span style="COLOR: #200080; FONT-WEIGHT: bold">Option Explicit</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Private</span> objShell <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Object</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Private</span> mvarZipFileName <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Const</span> FOF_NOCONFIRMATION <span style="COLOR: #308080">=</span> <span style="COLOR: #008c00">&amp;H14</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Private</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> Class_Initialize<span style="COLOR: #308080">(</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Set</span> objShell <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">CreateObject</span><span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">"Shell.Application"</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Private</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> Class_Terminate<span style="COLOR: #308080">(</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Set</span> objShell <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Nothing</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Public</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Property</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Let</span> ZipFileName<span style="COLOR: #308080">(</span><span style="COLOR: #200080; FONT-WEIGHT: bold">ByVal</span> vData <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span><span style="COLOR: #308080">)</span> mvarZipFileName <span style="COLOR: #308080">=</span> vData <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Property</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Public</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Property</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Get</span> ZipFileName<span style="COLOR: #308080">(</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span> ZipFileName <span style="COLOR: #308080">=</span> mvarZipFileName <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Property</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Private</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> CreateEmptyZip<span style="COLOR: #308080">(</span>sPath<span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Dim</span> strZIPHeader <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Dim</span> fso <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Object</span> strZIPHeader <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Chr</span>$<span style="COLOR: #308080">(</span><span style="COLOR: #008c00">80</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Chr</span>$<span style="COLOR: #308080">(</span><span style="COLOR: #008c00">75</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Chr</span>$<span style="COLOR: #308080">(</span><span style="COLOR: #008c00">5</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Chr</span>$<span style="COLOR: #308080">(</span><span style="COLOR: #008c00">6</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span><span style="COLOR: #308080">(</span><span style="COLOR: #008c00">18</span><span style="COLOR: #308080">,</span> vbNullChar<span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Set</span> fso <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">CreateObject</span><span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">"Scripting.FileSystemObject"</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">With</span> fso <span style="COLOR: #308080">.</span>CreateTextFile<span style="COLOR: #308080">(</span>sPath<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>Write strZIPHeader <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">With</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Set</span> fso <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Nothing</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Sub</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Public</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Function</span> AddFilesToZip<span style="COLOR: #308080">(</span>sFileNames<span style="COLOR: #308080">(</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Boolean</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Dim</span> i <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Long</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Dim</span> iCount <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Long</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">On</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Error</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">GoTo</span> AddFilesToZip_Error CreateEmptyZip mvarZipFileName <span style="COLOR: #200080; FONT-WEIGHT: bold">On</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Error</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Resume</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Next</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">For</span> i <span style="COLOR: #308080">=</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">LBound</span><span style="COLOR: #308080">(</span>sFileNames<span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">To</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">UBound</span><span style="COLOR: #308080">(</span>sFileNames<span style="COLOR: #308080">)</span> objShell<span style="COLOR: #008c00">.</span>Namespace<span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> mvarZipFileName<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>CopyHere <span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> sFileNames<span style="COLOR: #308080">(</span>i<span style="COLOR: #308080">)</span><span style="COLOR: #308080">,</span> FOF_NOCONFIRMATION iCount <span style="COLOR: #308080">=</span> objShell<span style="COLOR: #008c00">.</span>Namespace<span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> mvarZipFileName<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>items<span style="COLOR: #008c00">.</span>Count <span style="COLOR: #200080; FONT-WEIGHT: bold">Do</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Until</span> iCount <span style="COLOR: #308080">=</span> i <span style="COLOR: #308080">+</span> <span style="COLOR: #008c00">1</span> Sleep <span style="COLOR: #008c00">100</span> iCount <span style="COLOR: #308080">=</span> objShell<span style="COLOR: #008c00">.</span>Namespace<span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> mvarZipFileName<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>items<span style="COLOR: #008c00">.</span>Count <span style="COLOR: #200080; FONT-WEIGHT: bold">Loop</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Next</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">On</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Error</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">GoTo</span> <span style="COLOR: #008c00">0</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Exit</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Function</span> <span style="COLOR: #e34adc">AddFilesToZip_Error</span><span style="COLOR: #308080">:</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">MsgBox</span> <span style="COLOR: #1060b6">"Error "</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Err</span><span style="COLOR: #008c00">.</span>Number <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #1060b6">" ("</span> <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Err</span><span style="COLOR: #008c00">.</span>Description <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #1060b6">") in procedure AddFilesToZip of Modulo di classe clsZip"</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Function</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Public</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Function</span> UnzipToFolder<span style="COLOR: #308080">(</span>sFolderName <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">String</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">As</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Boolean</span> objShell<span style="COLOR: #008c00">.</span>Namespace<span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> sFolderName<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>CopyHere objShell<span style="COLOR: #008c00">.</span>Namespace<span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">""</span> <span style="COLOR: #308080">&amp;</span> mvarZipFileName<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span>items <span style="COLOR: #200080; FONT-WEIGHT: bold">End</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">Function</span></pre> <hr /> <p> </p> Technorati tags: <a rel="tag" href="http://technorati.com/tags/zip">zip</a>, <a rel="tag" href="http://technorati.com/tags/Visual+basic 6">Visual basic 6</a>, <a rel="tag" href="http://technorati.com/tags/vba">vba</a>, <a rel="tag" href="http://technorati.com/tags/windows+shell">windows shell</a> <img src="http://blogs.ugidotnet.org/fgiossi/aggbug/95809.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2009/03/27/how-to-zip-a-file-using-visual-basic-6-and.aspx Fri, 27 Mar 2009 12:40:32 GMT http://blogs.ugidotnet.org/fgiossi/archive/2009/03/27/how-to-zip-a-file-using-visual-basic-6-and.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/95809.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/95809.aspx Excel: convenzione di chiamata dll non valida VBA http://blogs.ugidotnet.org/fgiossi/archive/2008/11/10/excel-convenzione-di-chiamata-dll-non-valida.aspx <p>Una mattina persa a cercare di capire quale potessere essere il mistero legato alla <font face="Arial"><strong>convenzione di chiamata dll non valida.</strong></font></p> <p>La soluzione, come spesso accade, sta nel cercare di arrivare all'unica verità possibile, ovvero che il cucchiaio non esiste... Esportare tutti i moduli bas dal progetto vba, eliminarli e reinserirli. Eseguire la compilazione del progetto dall'interno dell'ambiente di sviluppo et voilà... <font face="Arial">Les jeux sont fait!</font></p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/94592.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2008/11/10/excel-convenzione-di-chiamata-dll-non-valida.aspx Mon, 10 Nov 2008 23:09:39 GMT http://blogs.ugidotnet.org/fgiossi/archive/2008/11/10/excel-convenzione-di-chiamata-dll-non-valida.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/94592.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/94592.aspx Contrarre una selection (range) in Excel VBA http://blogs.ugidotnet.org/fgiossi/archive/2008/10/20/contrarre-una-selection-range-in-excel.aspx <p>Semplice funzione per Excel che consente di contrarre di <em>n</em> righe una selection (per intenderci, un range di celle) .</p> <p>Risulta utile anche per spostarsi in su od in giù di <em>n</em> righe se la selection corrente è una singola cella.</p> <pre style="BACKGROUND: #f6f8ff; COLOR: #000020"><span style="FONT-WEIGHT: bold; COLOR: #200080">Function</span> CropSelection<span style="COLOR: #308080">(</span>Rows <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Long</span><span style="COLOR: #308080">)</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Boolean</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Dim</span> sSelection <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">String</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Dim</span> iDollarPosition <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Long</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Dim</span> sRow <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">String</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Dim</span> lRow <span style="FONT-WEIGHT: bold; COLOR: #200080">As</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Long</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">On</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Error</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">GoTo</span> CropSelection_Error sSelection <span style="COLOR: #308080">=</span> Selection<span style="COLOR: #008c00">.</span>Address<span style="COLOR: #308080">(</span><span style="COLOR: #308080">)</span> iDollarPosition <span style="COLOR: #308080">=</span> InStrRev<span style="COLOR: #308080">(</span>sSelection<span style="COLOR: #308080">,</span> <span style="COLOR: #1060b6">"$"</span><span style="COLOR: #308080">)</span> sRow <span style="COLOR: #308080">=</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Mid</span><span style="COLOR: #308080">(</span>sSelection<span style="COLOR: #308080">,</span> iDollarPosition <span style="COLOR: #308080">+</span> <span style="COLOR: #008c00">1</span><span style="COLOR: #308080">)</span> lRow <span style="COLOR: #308080">=</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">CLng</span><span style="COLOR: #308080">(</span>sRow<span style="COLOR: #308080">)</span> <span style="COLOR: #308080">-</span> Rows sRow <span style="COLOR: #308080">=</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Mid</span><span style="COLOR: #308080">(</span>sSelection<span style="COLOR: #308080">,</span> <span style="COLOR: #008c00">1</span><span style="COLOR: #308080">,</span> iDollarPosition <span style="COLOR: #308080">-</span> <span style="COLOR: #008c00">1</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">&amp;</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">CStr</span><span style="COLOR: #308080">(</span>lRow<span style="COLOR: #308080">)</span> Range<span style="COLOR: #308080">(</span>sRow<span style="COLOR: #308080">)</span><span style="COLOR: #308080">.</span><span style="FONT-WEIGHT: bold; COLOR: #200080">Select</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">On</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Error</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">GoTo</span> <span style="COLOR: #008c00">0</span> CropSelection <span style="COLOR: #308080">=</span> <span style="COLOR: #0f4d75">True</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Exit</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Function</span> <span style="COLOR: #e34adc">CropSelection_Error</span><span style="COLOR: #308080">:</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">MsgBox</span> <span style="COLOR: #1060b6">"Error "</span> <span style="COLOR: #308080">&amp;</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Err</span><span style="COLOR: #008c00">.</span>Number <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #1060b6">" ("</span> <span style="COLOR: #308080">&amp;</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Err</span><span style="COLOR: #008c00">.</span>Description <span style="COLOR: #308080">&amp;</span> <span style="COLOR: #1060b6">") in procedure CropSelection of Modulo Modulo1"</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">End</span> <span style="FONT-WEIGHT: bold; COLOR: #200080">Function</span> </pre><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/94305.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2008/10/20/contrarre-una-selection-range-in-excel.aspx Mon, 20 Oct 2008 23:42:38 GMT http://blogs.ugidotnet.org/fgiossi/archive/2008/10/20/contrarre-una-selection-range-in-excel.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/94305.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/94305.aspx Clausola TOP n T-SQL Oracle MySQL http://blogs.ugidotnet.org/fgiossi/archive/2008/04/23/clausola-top-n.aspx <div><strong>SQL Server:</strong></div> <div>SELECT TOP 10 product, descr, email <br /> FROM products </div> <div> </div> <div><strong>ORACLE:</strong></div> <div>SELECT product, descr, email<br /> FROM products <br /> WHERE ROWNUM &lt;= 10</div> <div><br />  </div> <div><strong>MySQL:</strong></div> <div>SELECT product, descr, email<br /> FROM products<br /> LIMIT 10</div><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/92359.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2008/04/23/clausola-top-n.aspx Wed, 23 Apr 2008 21:48:24 GMT http://blogs.ugidotnet.org/fgiossi/archive/2008/04/23/clausola-top-n.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/92359.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/92359.aspx How to format a value using T-SQL: pad left T-SQL http://blogs.ugidotnet.org/fgiossi/archive/2007/11/15/how-to-format-a-value-using-t-sql.aspx <p>SQL server has no built-in format functions. Here is a user defined function which left-pad a varchar value with a variable length string.</p> <p><span style="COLOR: #200080; FONT-WEIGHT: bold">CREATE</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">FUNCTION</span> <span style="COLOR: #308080">[</span>dbo<span style="COLOR: #308080">]</span><span style="COLOR: #308080">.</span><span style="COLOR: #308080">[</span>PadString<span style="COLOR: #308080">]</span> <br /> <br /> <span style="COLOR: #308080">(</span><span style="COLOR: #007d45">@Seq</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">varchar</span><span style="COLOR: #308080">(</span><span style="COLOR: #008c00">16</span><span style="COLOR: #308080">)</span><span style="COLOR: #308080">,</span><br /> <span style="COLOR: #007d45">@PadWith</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">char</span><span style="COLOR: #308080">(</span><span style="COLOR: #008c00">1</span><span style="COLOR: #308080">)</span><span style="COLOR: #308080">,</span><br /> <span style="COLOR: #007d45">@PadLength</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">int</span><br /> <span style="COLOR: #308080">)</span> <br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">RETURNS</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">varchar</span><span style="COLOR: #308080">(</span><span style="COLOR: #008c00">16</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">AS</span><br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">BEGIN</span> <br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">declare</span> <span style="COLOR: #007d45">@curSeq</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">varchar</span><span style="COLOR: #308080">(</span><span style="COLOR: #008c00">16</span><span style="COLOR: #308080">)</span><br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">SELECT</span> <span style="COLOR: #007d45">@curSeq</span> <span style="COLOR: #308080">=</span> ISNULL<span style="COLOR: #308080">(</span><span style="COLOR: #7779bb; FONT-WEIGHT: bold">REPLICATE</span><span style="COLOR: #308080">(</span><span style="COLOR: #007d45">@PadWith</span><span style="COLOR: #308080">,</span> <span style="COLOR: #007d45">@PadLength</span> <span style="COLOR: #308080">-</span> <span style="COLOR: #7779bb; FONT-WEIGHT: bold">len</span><span style="COLOR: #308080">(</span>ISNULL<span style="COLOR: #308080">(</span><span style="COLOR: #007d45">@Seq</span> <span style="COLOR: #308080">,</span><span style="COLOR: #008c00">0</span><span style="COLOR: #308080">)</span><span style="COLOR: #308080">)</span><span style="COLOR: #308080">)</span><span style="COLOR: #308080">,</span> <span style="COLOR: #1060b6">''</span><span style="COLOR: #308080">)</span> <span style="COLOR: #308080">+</span> <span style="COLOR: #007d45">@Seq</span><br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">RETURN</span> <span style="COLOR: #007d45">@curSeq</span><br /> <br /> <span style="COLOR: #200080; FONT-WEIGHT: bold">END</span><br /> </p> <p>Testing the function:</p> <pre style="BACKGROUND: #f6f8ff; COLOR: #000020"><span style="COLOR: #200080; FONT-WEIGHT: bold">SELECT</span> dbo<span style="COLOR: #308080">.</span>PadString <span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">'8'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #1060b6">'0'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #008c00">5</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">SELECT</span> dbo<span style="COLOR: #308080">.</span>PadString <span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">'abc'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #1060b6">'*'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #008c00">12</span><span style="COLOR: #308080">)</span> <span style="COLOR: #200080; FONT-WEIGHT: bold">SELECT</span> dbo<span style="COLOR: #308080">.</span>PadString <span style="COLOR: #308080">(</span><span style="COLOR: #1060b6">'abc'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #1060b6">'0'</span><span style="COLOR: #308080">,</span> <span style="COLOR: #008c00">7</span><span style="COLOR: #308080">)</span> </pre> <p> </p> <p>Here are the results:</p> <p><font face="Arial">                 <br /> ---------------- <br /> 00008</font></p> <p><font face="Arial">(1 row(s) affected)</font></p> <p><font face="Arial">                 <br /> ---------------- <br /> *********abc</font></p> <p><font face="Arial">(1 row(s) affected)</font></p> <p><font face="Arial">                 <br /> ---------------- <br /> 0000abc</font></p> <p><font face="Arial">(1 row(s) affected)</font></p> <p>---------------------------------------------------------</p> <p>TAGS: sql server format string pad left</p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/89719.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2007/11/15/how-to-format-a-value-using-t-sql.aspx Thu, 15 Nov 2007 09:55:10 GMT http://blogs.ugidotnet.org/fgiossi/archive/2007/11/15/how-to-format-a-value-using-t-sql.aspx#feedback 9 http://blogs.ugidotnet.org/fgiossi/comments/commentRss/89719.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/89719.aspx OLEDB and text files Visual Basic OLEDB http://blogs.ugidotnet.org/fgiossi/archive/2007/10/07/oledb-and-text-files.aspx <p><font face="Arial">This is a very quick example about OLEDB and read a text (.txt) file using Visual Basic 6.<br /> The text file must be formatted as a simple CSV file with a field separator. Something like this</font></p> <p><font face="Arial">Test.txt</font></p> <p><font face="Arial">a;1;Test<br /> b;2;Test<br /> c;3;Test<br /> d;4;Test</font></p> <p><font face="Arial">Supposing "Test.Txt" is stored in the root of the C: harddrive, the code will look like</font></p> <p>----------------------------------------</p> <p><font face="Arial"><span class="kwrd"><span style="COLOR: #0000ff">Dim</span><span style="COLOR: #000000"> cn </span><span style="COLOR: #0000ff">As</span><span style="COLOR: #000000"> ADODB.Connection<br /> </span><span style="COLOR: #0000ff">Dim</span><span style="COLOR: #000000"> rs </span><span style="COLOR: #0000ff">As</span><span style="COLOR: #000000"> ADODB.Recordset<br /> </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> cn </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">CreateObject</span><span style="COLOR: #000000">(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">ADODB.Connection</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br /> cn.Open </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\;Extended Properties=""text;HDR=No;FMT=Delimited'""</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br /> </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> rs </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">CreateObject</span><span style="COLOR: #000000">(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">ADODB.Recordset</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br /> rs.Open </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">SELECT * FROM Test.txt</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">, cn, </span><span style="COLOR: #800080">0</span><span style="COLOR: #000000">, </span><span style="COLOR: #800080">1</span><span style="COLOR: #000000">, </span><span style="COLOR: #800080">1</span><span style="COLOR: #000000"><br /> </span><span style="COLOR: #0000ff">While</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">Not</span><span style="COLOR: #000000"> rs.EOF<br />     Debug.Print rs.Fields(</span><span style="COLOR: #800080">0</span><span style="COLOR: #000000">).Value, rs.Fields(</span><span style="COLOR: #800080">1</span><span style="COLOR: #000000">).Value, rs.Fields(</span><span style="COLOR: #800080">2</span><span style="COLOR: #000000">).Value<br />     rs.MoveNext<br /> </span><span style="COLOR: #0000ff">Wend</span><span style="COLOR: #000000"><br /> rs.Close<br /> </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> rs </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">Nothing</span><span style="COLOR: #000000"><br /> cn.Close<br /> </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> cn </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">Nothing</span></span></font></p> <p><font face="Arial"><span class="kwrd"><span style="COLOR: #0000ff" /></span></font></p> <p>----------------------------------------</p> <p>Take a look to the connection string</p> <p><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\;Extended Properties=""text;HDR=No;FMT=Delimited'""</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br /> </span><span style="COLOR: #000000" /></p> <p><span style="COLOR: #000000">the <span style="COLOR: #800000">Data Source=c:\;</span></span> is the key. If you plan to store your text file in a different folde, let's say "c:\documents and settings\Auser\Documents\myTestFiles\", you are required to change the connection string this way:</p> <p><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\documents and settings\Auser\Documents\myTestFiles\;Extended Properties=""text;HDR=No;FMT=Delimited'""</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br /> </span></p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/88799.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2007/10/07/oledb-and-text-files.aspx Sun, 07 Oct 2007 21:00:14 GMT http://blogs.ugidotnet.org/fgiossi/archive/2007/10/07/oledb-and-text-files.aspx#feedback http://blogs.ugidotnet.org/fgiossi/comments/commentRss/88799.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/88799.aspx ShowModalDialog and ASP.NET, a full working example ASP.NET ShowModalDialog http://blogs.ugidotnet.org/fgiossi/archive/2007/09/02/showmodaldialog-and-asp.net-a-full-working-example.aspx <p>Here is a simple working example explaining how to use <strong>ShowModalDialog</strong> and asp.net with Visual Studio 2005.</p> <p>Start with default.aspx, which has a single button. Once clicked, it will popup a modal window which will show a single button labeled "Close me!".</p> <p>The postback will redirect the user to a new page, whose purpose is to close the modal window and return the string value '1' which will be evalueted by the parent window using the <font size="2"><strong>returnValue</strong> property.</font></p> <p><font size="2">If returnValue is '1' then the form will be submitted to itself, just to show how to reuse local values and force a timer label to refresh</font></p> <p>Download the example from <a href="http://blogs.ugidotnet.org/images/blogs_ugidotnet_org/fgiossi/ShowModalDialog.zip">here</a></p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/88093.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2007/09/02/showmodaldialog-and-asp.net-a-full-working-example.aspx Sun, 02 Sep 2007 22:54:30 GMT http://blogs.ugidotnet.org/fgiossi/archive/2007/09/02/showmodaldialog-and-asp.net-a-full-working-example.aspx#feedback 4 http://blogs.ugidotnet.org/fgiossi/comments/commentRss/88093.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/88093.aspx Running custom VbScript code from asp ASP VbScript http://blogs.ugidotnet.org/fgiossi/archive/2007/08/27/running-custom-vbscript-code-from-asp.aspx <p><font face="Arial">Running custom VbScript code from asp</font></p> <p><font face="Arial">I was in the need to run some custom VbScript code from an asp page, so I went through the problem and found a very simple solution.<br /> A common solution is to use the Microsoft ScriptControl.<br /> Here is a very simple example running a piece of code stored in a text file.</font></p> <p><strong>default.asp</strong></p> <p><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">%@language</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">VBSCRIPT%</span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"><br /> </span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">%<br /> <br /> </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> sFile : sFile </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">""</span><span style="COLOR: #000000"><br /> <br /> sFile </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> LoadFile(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">MyCustomScript.txt</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br /> <br /> </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">len</span><span style="COLOR: #000000">(sFile) </span><span style="COLOR: #000000">&gt;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">0</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">then</span><span style="COLOR: #000000"><br />     Response.Write </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">The result is: </span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000"> ExecScript(sFile)<br /> </span><span style="COLOR: #0000ff">end</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"><br /> <br /> </span><span style="COLOR: #0000ff">Function</span><span style="COLOR: #000000"> ExecScript(sScript)<br /> <br />         </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> sc<br />         </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">Create the Script Control object</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">set</span><span style="COLOR: #000000"> sc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> server.CreateObject(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">scriptcontrol</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br />         <br />         sc.Language </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">VBSCRIPT</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br />         sc.UseSafeSubset </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000"><br />         sc.Reset<br />         <br />         </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">add the custom script to the ScripContro object</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">        sc.AddCode sScript<br />         </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">run the code and evaluate the result of the "CustomScript" function</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">        ExecScript </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> sc.Eval(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">CustomScript</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br />         <br />         </span><span style="COLOR: #0000ff">set</span><span style="COLOR: #000000"> sc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">nothing</span><span style="COLOR: #000000"><br /> <br /> </span><span style="COLOR: #0000ff">End Function</span><span style="COLOR: #000000"><br /> <br /> </span><span style="COLOR: #0000ff">Function</span><span style="COLOR: #000000"> LoadFile(sFileName)<br />     </span><span style="COLOR: #0000ff">Dim</span><span style="COLOR: #000000"> objFSO<br />     </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> objFSO </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> Server.CreateObject(</span><span style="COLOR: #800000">"</span><span style="COLOR: #800000">Scripting.FileSystemObject</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000">)<br /> <br />     </span><span style="COLOR: #0000ff">Dim</span><span style="COLOR: #000000"> objTextStream<br />     </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> strFileName<br />     </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> lsTemp<br /> <br />     strFileName </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> server.MapPath(sFileName)<br />     </span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> fsoForReading </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">1</span><span style="COLOR: #000000"><br /> <br />     </span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000"> objFSO.FileExists(strFileName) </span><span style="COLOR: #0000ff">then</span><span style="COLOR: #000000"><br />         </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">The file exists, so open it and output its contents</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> objTextStream </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> objFSO.OpenTextFile(strFileName, fsoForReading)<br />         lsTemp</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">  vbNullString </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000"> objTextStream.ReadAll </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000"> vbNullString<br />         objTextStream.Close<br />         </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> objTextStream </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">Nothing</span><span style="COLOR: #000000"><br />     </span><span style="COLOR: #0000ff">Else</span><span style="COLOR: #000000"><br />         </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">The file did not exist</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">        Response.Write strFileName </span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000"> </span><span style="COLOR: #800000">"</span><span style="COLOR: #800000"> was not found.</span><span style="COLOR: #800000">"</span><span style="COLOR: #000000"><br />     </span><span style="COLOR: #0000ff">End</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000"><br /> <br />     </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">Clean up</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000"> objFSO </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">Nothing</span><span style="COLOR: #000000"><br />     LoadFile </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> lsTemp<br /> </span><span style="COLOR: #0000ff">end function</span><span style="COLOR: #000000"><br /> <br /> %</span><span style="COLOR: #000000">&gt;</span></p> <p><span style="COLOR: #000000"><strong>MyCustomScript.txt</strong></span></p> <p><span style="COLOR: #000000"><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000"> CustomScript()<br />     </span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">Let's calculate the area of a rectangle</span><span style="COLOR: #008000"><br /> </span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> dHeight : dHeight </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">10</span><span style="COLOR: #000000"><br />     </span><span style="COLOR: #0000ff">dim</span><span style="COLOR: #000000"> dWidth : dWidth </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #800080">20</span><span style="COLOR: #000000"><br />     CustomScript </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">cstr</span><span style="COLOR: #000000">(dHeight </span><span style="COLOR: #000000">*</span><span style="COLOR: #000000"> dWidth)<br /> </span><span style="COLOR: #0000ff">end function</span></span></p> <p><span style="COLOR: #000000">This is a very easy example of how to use the Microsoft ScriptControl in an asp page.<br /> A more realistic task would be, for example, store the script in a database, get the scripts from there and run 'em like exposed above.</span></p><img src="http://blogs.ugidotnet.org/fgiossi/aggbug/87986.aspx" width="1" height="1" /> Francesco Giossi http://blogs.ugidotnet.org/fgiossi/archive/2007/08/27/running-custom-vbscript-code-from-asp.aspx Mon, 27 Aug 2007 21:25:59 GMT http://blogs.ugidotnet.org/fgiossi/archive/2007/08/27/running-custom-vbscript-code-from-asp.aspx#feedback 3 http://blogs.ugidotnet.org/fgiossi/comments/commentRss/87986.aspx http://blogs.ugidotnet.org/fgiossi/services/trackbacks/87986.aspx