tag:blogger.com,1999:blog-67543752008-05-12T14:25:38.665-07:00Hoojo.com - Blog!Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comBlogger57125tag:blogger.com,1999:blog-6754375.post-24354892525038642422008-05-09T12:53:00.001-07:002008-05-09T13:04:56.234-07:00Parse web page in ASP<a href="http://bp0.blogger.com/_tC0Mw9eeuwQ/SCSuT9tPmRI/AAAAAAAAAxc/AGAVhkfHJb4/s1600-h/solution.jpg"><img id="BLOGGER_PHOTO_ID_5198471527897471250" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp0.blogger.com/_tC0Mw9eeuwQ/SCSuT9tPmRI/AAAAAAAAAxc/AGAVhkfHJb4/s400/solution.jpg" border="0" /></a><br /><div></div><br /><div></div><br /><div>URL = "your url here"<br /><br />Set webconn= CreateObject("Microsoft.XMLHTTP")<br />webconn.Open "get", URL , False<br />webconn.Send<br />ResponseText = webconn.ResponseText</div><br /><div></div><br /><div>set webconn = nothing</div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-82582473234706630732008-04-16T10:10:00.000-07:002008-05-12T14:25:38.868-07:00ASP Error ‘ASP 0104: 80004005'<a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/SAY0Foo3etI/AAAAAAAAAs0/a8KkeRj9o7Y/s1600-h/solution.jpg"><img id="BLOGGER_PHOTO_ID_5189892892003891922" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/SAY0Foo3etI/AAAAAAAAAs0/a8KkeRj9o7Y/s400/solution.jpg" border="0" /></a><br /><p> </p><p> </p><p> </p><p> </p><p>Solution: </p><br /><p>Open IIS Manager</p><br /><p>Right click on your local computer</p><br /><p>In the Internet Information Service windows the very first checkbox is “Enable Direct Metabase Edit”.</p><br /><p>Open your metabase.XML which is located in c:\Windows\System32\Inetsrv find the line “AspMaxRequestEntityAllowed” and change it to “1073741824″. (1GB) </p><br /><div>(may need stop IIS first before modify)</div><div> </div><div>or will be much better to modify with this:</div><div>Internet Information Services (IIS) 6.0 Resource Kit Tools:</div><div><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&amp;DisplayLang=en">http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&amp;DisplayLang=en</a></div><div> </div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-52124552974063492612008-04-12T23:53:00.000-07:002008-04-13T00:09:41.792-07:00PaaS contender: Facebook | Google's App Engine<p><a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/SAGwo4o3esI/AAAAAAAAAss/9DL2sRVFnpw/s1600-h/appengine_lowres.jpg"><img id="BLOGGER_PHOTO_ID_5188622462152571586" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/SAGwo4o3esI/AAAAAAAAAss/9DL2sRVFnpw/s400/appengine_lowres.jpg" border="0" /></a><br />many individuals and some organizations do use Facebook for business purposes.<br /><br />Whether App Engine will permanently challenge Facebook, though, will depend on one burning question: will developers be able to make money from their Google App Engine creations? Make no mistake about it, developers build on Facebook not only for the kudos but also because a successful widget can make them a lot of money.<br /></p><ol><li><a href="http://developers.facebook.com/">Facebook Platform</a></li><li><a href="http://code.google.com/appengine/">Google App Engine</a> enables you to build web applications on the same scalable systems that power Google applications.</li></ol><p> </p><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-10893946206829477452008-04-06T23:29:00.000-07:002008-04-06T23:34:02.900-07:00Tips to save on gas<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R_nAT9_o13I/AAAAAAAAAsk/_krc7PhQOuk/s1600-h/education.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R_nAT9_o13I/AAAAAAAAAsk/_krc7PhQOuk/s400/education.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5186387895185364850" /></a><br /><ol><li>Only buy or fill up your car or truck in the early morning when the ground temperature is still cold. Remember that all service stations have their storage tanks buried below ground. The colder the ground the more dense the gasoline, when it gets warmer gasoline expands, so buying in the afternoon or in the evening....your gallon is not exactly a gallon. In the petroleum business, the specific gravity and the temperature of the gasoline, diesel and jet fuel, ethanol and other petroleum products plays an important role. A 1-degree rise in temperature is a big deal for this business. But the service stations do not have temperature compensation at the pumps. </li><li>When you're filling up do not squeeze the trigger of the nozzle to a fast mode. If you look you will see that the trigger has three (3) stages: low, middle, and high. In slow mode you should be pumping on low speed, thereby minimizing the vapors that are created while you are pumping. All hoses at the pump have a vapor return. If you are pumping on the fast rate, some other liquid that goes to your tank becomes vapor. Those vapors are being sucked up and back into the underground storage tank so you're getting less worth for your money. </li><li>One of the most important tips is to fill up when your gas tank is HALF FULL or HALF EMPTY. The reason for this is, the more gas you have in your tank the less air occupying its empty space. Gasoline evaporates faster than you can imagine. Gasoline storage tanks have an internal floating roof. This roof serves as zero clearance between the gas and the atmosphere, so it minimizes the evaporation. Unlike service stations, here where I work, every truck that we load is temperature compensated so that every gallon is actually the exact amount. </li><li>Another reminder, if there is a gasoline truck pumping into the storage tanks when you stop to buy gas, DO NOT fill up--most likely the gasoline is being stirred up as the gas is being delivered, and you might pick up some of the dirt that normally settles on the bottom. Hope this will help you get the most value for your money. </li></ol><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-9758213848033960322008-04-05T22:46:00.000-07:002008-04-05T23:02:43.866-07:00Geocoder to get Township, Section, USGS Quad by Lat/Long<a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/R_hnE9_o12I/AAAAAAAAAsc/JqO9hnJvVyg/s1600-h/gis.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/R_hnE9_o12I/AAAAAAAAAsc/JqO9hnJvVyg/s400/gis.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5186008305975744354" /></a><br />GIS Geocoder allows for the conversion of Latitude and Longitude (Lat/Long) values into State, County, Township, Range, Section and USGS Quad (Texas: Abstract, Block, Grantee).<br /><br />For detail, please contact <a href="http://www.costudio.com">costudio</a>.<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-78686716766317885082008-04-05T22:43:00.000-07:002008-04-05T22:44:58.866-07:00Sketch<a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/R_hjP9_o11I/AAAAAAAAAsU/WZJBDmhZz9M/s1600-h/thumb.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/R_hjP9_o11I/AAAAAAAAAsU/WZJBDmhZz9M/s400/thumb.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5186004096907794258" /></a><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-24561183722437717452008-03-28T16:11:00.000-07:002008-03-28T18:08:58.233-07:00Data Warehouse Client<a href="http://bp0.blogger.com/_tC0Mw9eeuwQ/R-1tld_o1yI/AAAAAAAAAr8/sxWxaK8b7uY/s1600-h/datawarehouse.jpg"><img id="BLOGGER_PHOTO_ID_5182919236647442210" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp0.blogger.com/_tC0Mw9eeuwQ/R-1tld_o1yI/AAAAAAAAAr8/sxWxaK8b7uY/s400/datawarehouse.jpg" border="0" /></a><br />Cut consolidation and reporting cycles to spend more time on in-depth analysis and enable more flexible, dynamic planning.<br /><br />features:<br /><ul><br /><li>Integrate Current System<br /><br /><em>offer metadata tool, support Oracle, MS SQL Server, Sybase, DB2, Paradox...</em><br /></li><br /><li>Customized Reports<br /><em>offer unprecedented control and flexibility, so users can customize reports to suit their individual needs.<br /></em></li><br /><li>Reports in a Business Context<br /><em>make it easy and intuitive for users to locate and execute the reports they need. Users are insulated from database complexities and need not understand SQL or the underlying database to execute and view reports.<br /></em></li><br /><li>High-Quality, Print-Ready Reports<br /><em>can deliver information in a variety of formats, including standard HTML reports, or print-ready, export to MS Excel.<br /></em></li><br /></ul><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-59702706756237125902008-03-28T10:08:00.000-07:002008-03-28T10:19:34.943-07:00Cartoon<a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/R-0oct_o1vI/AAAAAAAAArg/AdWkNdEv_WA/s1600-h/193737_712515136.jpg"><img id="BLOGGER_PHOTO_ID_5182843220021270258" style="CURSOR: hand" alt="" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/R-0oct_o1vI/AAAAAAAAArg/AdWkNdEv_WA/s400/193737_712515136.jpg" border="0" /></a><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-8244489935399245022008-03-25T14:03:00.000-07:002008-03-25T14:07:58.484-07:00Using the enter key to submit a form<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-lpP9_o1rI/AAAAAAAAAqk/ncgbu4e9DBk/s1600-h/css.jpg"><img id="BLOGGER_PHOTO_ID_5181788569326900914" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-lpP9_o1rI/AAAAAAAAAqk/ncgbu4e9DBk/s320/css.jpg" border="0" /></a><br /><div>&lt;input name="LoginPass" type="password" id="LoginPass" onkeydown="if ((event.which &amp;&amp; event.which == 13) <br />(event.keyCode &amp;&amp; event.keyCode == 13))<br />{<br />DoSubmit(1);<br />return false;<br />}<br />else return true;"<br />/&gt; </div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-76813207429713625022008-03-25T10:21:00.000-07:002008-03-25T10:25:23.085-07:00OpenSocial continues to grow<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-k1W9_o1qI/AAAAAAAAAqc/VCQEbkjN9yA/s1600-h/links.jpg"><img id="BLOGGER_PHOTO_ID_5181731514981340834" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-k1W9_o1qI/AAAAAAAAAqc/VCQEbkjN9yA/s320/links.jpg" border="0" /></a><br /><div>Yahoo!, MySpace, and Google are joining with the broader community to create a non-profit foundation to foster the continued open development of OpenSocial. To that end, we've also launched <a href="http://www.opensocial.org/">OpenSocial.org</a>, designed to become the main documentation hub and primary source of information about OpenSocial. To learn more, and to get involved, please review the <a href="http://sites.google.com/a/opensocial.org/opensocial/OpenSocial-Foundation-Proposal">foundation proposal</a>.</div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-90948767742884976212008-03-21T13:31:00.000-07:002008-03-21T13:33:33.909-07:00GBrowserIsCompatible javascript error<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R-Qbkd_o1pI/AAAAAAAAAp8/1BlySmVf4y4/s1600-h/googlemap.jpg"><img id="BLOGGER_PHOTO_ID_5180295784723699346" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R-Qbkd_o1pI/AAAAAAAAAp8/1BlySmVf4y4/s320/googlemap.jpg" border="0" /></a><br />Delete cookies...<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-11822061418529776962008-03-19T11:13:00.000-07:002008-03-19T11:17:45.344-07:00Add a page break to a HTML page<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-FYvFonnfI/AAAAAAAAApo/8mrIPlqfxFs/s1600-h/css.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R-FYvFonnfI/AAAAAAAAApo/8mrIPlqfxFs/s320/css.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5179518612442422770" /></a><br />&lt;STYLE type=&quot;text/css&quot;&gt;<br><br />.newpage {<br><br />page-break-after: always;<br><br />}<br><br />&lt;/STYLE&gt;<br /><p> <br><br /> &lt;p class=&quot;newpage&quot; /&gt;</p><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-92058198868955434722008-03-15T23:34:00.000-07:002008-03-15T23:53:15.466-07:00Google Gadget<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9zDzVonneI/AAAAAAAAApg/fcgmDats3k0/s1600-h/gadget_1.gif"><img id="BLOGGER_PHOTO_ID_5178228958317485538" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9zDzVonneI/AAAAAAAAApg/fcgmDats3k0/s320/gadget_1.gif" border="0" /></a><br /><div><div></div><div>Google Gadget Ventures <a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/R9zCmFonncI/AAAAAAAAApQ/4oZooAGu9gE/s1600-h/gadget_1.gif"></a><br /><br /><br /><ul><br /><li>Grants of $5,000 to those who’ve built gadgets we’d like to see developed further. You’re eligible to apply for a grant if you’ve developed a gadget that’s in our <a href="http://www.google.com/ig/directory">Google gadgets directory</a> and gets at least 250,000 weekly page views. To apply, you must submit a one-page proposal detailing how you’d use the grant to improve your gadget.<br /></li><br /><br /><br /><li>Seed investments of $100,000 to developers who’d like to build a business around the Google gadgets platform. Only Google Gadget Venture grant recipients are eligible for this type of funding. Submitting a business plan detailing how you plan to build a viable business around the gadgets platform is a required part of the seed investment application process.<br /></li><br /></ul><br /><br />-- <a href="http://code.google.com/apis/gadgets/">http://code.google.com/apis/gadgets/</a></div></div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-38773616933984605922008-03-15T23:22:00.000-07:002008-03-15T23:51:54.563-07:00Screen scraping<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9zDglonndI/AAAAAAAAApY/w1BSWcc65_U/s1600-h/screen-scrape.gif"><img id="BLOGGER_PHOTO_ID_5178228636194938322" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9zDglonndI/AAAAAAAAApY/w1BSWcc65_U/s320/screen-scrape.gif" border="0" /></a><br /><div>Screen scraping is a technique in which a <a title="Computer program" href="http://en.wikipedia.org/wiki/Computer_program">computer program</a> extracts <a title="Data" href="http://en.wikipedia.org/wiki/Data">data</a> from the display <a title="Output" href="http://en.wikipedia.org/wiki/Output">output</a> of another program. The program doing the scraping is called a screen scraper. The key element that distinguishes screen scraping from regular <a title="Parsing" href="http://en.wikipedia.org/wiki/Parsing">parsing</a> is that the output being scraped was intended for final display to a human user, rather than as input to another program, and is therefore usually neither documented nor structured for convenient parsing. Screen scraping often involves ignoring binary data (usually images or multimedia data) and formatting elements that obscure the essential, desired text data. <a title="Optical character recognition" href="http://en.wikipedia.org/wiki/Optical_character_recognition">Optical character recognition</a> software is a kind of visual scraper.<br />There are a number of synonyms for screen scraping, including: Data scraping, data extraction, web scraping, page scraping, web page wrapping and HTML scraping (the last four being specific to scraping web pages).<br /><br />Screen scraping generally requires intensive <a title="Character (computing)" href="http://en.wikipedia.org/wiki/Character_%28computing%29">text</a> parsing <a class="mw-redirect" title="Algorithms" href="http://en.wikipedia.org/wiki/Algorithms">algorithms</a>. <a title="Computer language" href="http://en.wikipedia.org/wiki/Computer_language">Computer languages</a> that have strong support for <a class="mw-redirect" title="Regular expressions" href="http://en.wikipedia.org/wiki/Regular_expressions">regular expressions</a> and other text processing are thus a popular choice for writing screen scraping programs.<br /><br />-- <a href="http://en.wikipedia.org/wiki/Screen_scraping">http://en.wikipedia.org/wiki/Screen_scraping</a></div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-62595675053073700972008-03-13T11:05:00.000-07:002008-03-13T15:16:26.273-07:00Trigger for insert, update in sql server<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9lxqFonnbI/AAAAAAAAApA/Vh63hcPZ-AQ/s1600-h/sql.jpg"><br /><img id="BLOGGER_PHOTO_ID_5177294214520085938" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9lxqFonnbI/AAAAAAAAApA/Vh63hcPZ-AQ/s320/sql.jpg" border="0" /></a> <span style="color:#ff0000;">deleted</span> and <span style="color:#ff0000;">inserted</span> are logical (conceptual) tables. They are structurally similar to the table on which the trigger is defined, that is, the table on which the user action is attempted, and hold the old values or new values of the rows that may be changed by the user action. For example, to retrieve all values in the deleted table, use:<br />SELECT * FROM deleted<br /><br /><br /><br /><div>Create TRIGGER [dbo].[test1_insupd]<br />ON [dbo].[test1]<br />FOR INSERT, UPDATE<br />AS<br /><br />BEGIN<br />declare @f1 int<br />declare @f2 varchar(10)<br />declare @vishg char(1)<br />select @f1 = f1, @f2 = f2, @vishg = vishg from inserted<br />if UPDATE ( visHG ) and @vishg = '1'<br />begin<br />IF EXISTS(select * from test2 where f1 = @f1)<br />update test2 set f2 = 'true in t1' where f1 = @f1<br />else<br />insert into test2(f2) values( 'true in t1')<br />end<br />else<br />begin<br />IF EXISTS(select * from test2 where f1 = @f1)<br />update test2 set f2 = 'not true' where f1 = @f1<br />else<br />insert into test2(f2) values('not true')<br /><br />end<br /><br /><br />END</div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-26225139222441360302008-03-12T22:54:00.000-07:002008-03-13T09:08:41.370-07:00Display your own logo on address bar<a href="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9lRgFonnZI/AAAAAAAAAow/6i7DhvFuLoo/s1600-h/css.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R9lRgFonnZI/AAAAAAAAAow/6i7DhvFuLoo/s320/css.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5177258858349305234" /></a><br />Display your own logo (icon 16x16) on address bar and in the favorites list<br /><br /><br />&lt;head&gt;<br />&lt;LINK REL="SHORTCUT ICON" HREF="http://hoojo.com/appimages/hoojo.ico" /&gt;<br /><br />&lt;/head&gt;<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-66891888941800833302008-03-12T22:25:00.000-07:002008-03-13T09:09:11.706-07:003 column layout css<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9lRoVonnaI/AAAAAAAAAo4/XaFcux00f7s/s1600-h/css.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9lRoVonnaI/AAAAAAAAAo4/XaFcux00f7s/s320/css.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5177259000083226018" /></a><br />here is demo css code for 3 columns layout.<br /><br />&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br /><br />&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;<br /><br />&lt;head&gt;<br /><br />&lt;title&gt;3 columns css demo&lt;/title&gt;<br /><br />&lt;style type="text/css"&gt;<br /><br />&lt;!--<br /><br />#block_1<br /><br />{<br /><br />float: left;<br /><br />width: 50%;<br /><br />margin-left: 20%;<br /><br />}<br /><br />* html #block_1<br /><br />{<br /><br />display: inline;<br /><br />}<br /><br />#block_2<br /><br />{<br /><br />float: left;<br /><br />width: 20%;<br /><br />margin-left: -70%;<br /><br />}<br /><br />#block_3<br /><br />{<br /><br />float: left;<br /><br />width: 30%;<br /><br />}<br /><p>#block_1, #block_2, #block_3<br /><br />{<br /><br />padding-bottom: 32767px !important;<br /><br />margin-bottom: -32767px !important;<br /><br />}</p><br /><p><br /><br />#wrapper<br /><br />{<br /><br />overflow: hidden;<br /><br />}</p><br /><p>/* easy clearing */<br /><br />#wrapper:after<br /><br />{<br /><br />content: '[DO NOT LEAVE IT IS NOT REAL]';<br /><br />display: block;<br /><br />height: 0;<br /><br />clear: both;<br /><br />visibility: hidden;<br /><br />}<br /><br />#wrapper<br /><br />{<br /><br />display: inline-block;<br /><br />}</p><br /><p>#wrapper<br /><br />{<br /><br />display: block;<br /><br />}<br /><br />#footer<br /><br />{<br /><br />clear: both;<br /><br />}</p><br /><p>.all{ background-color:#006666;}<br /><br />.blue{ background-color:#0066FF;}<br /><br />.red{ background-color:#FF0000;}<br /><br />--&gt;<br /><br />&lt;/style&gt;<br /><br />&lt;/head&gt;</p><br /><p>&lt;body&gt;<br /><br />&lt;div class="all"&gt;<br /><br />&lt;div id="wrapper"&gt;<br /><br />&lt;div id="block_1" &gt;<br /><br />&lt;p&gt;center column&lt;/p&gt;</p><br /><p>&lt;p&gt;center column&lt;/p&gt;<br /><br />&lt;/div&gt;<br /><br />&lt;div id="block_2" class="blue" &gt;<br /><br />&lt;p&gt;left column&lt;/p&gt;<br /><br />&lt;p&gt;&amp;nbsp;&lt;/p&gt;</p><br /><p>&lt;p&gt;&amp;nbsp;&lt;/p&gt;<br /><br />&lt;p&gt;&amp;nbsp;&lt;/p&gt;<br /><br />&lt;p&gt;left column&lt;/p&gt;<br /><br />&lt;/div&gt;<br /><br />&lt;div id="block_3" class="red"&gt; right column&lt;/div&gt;<br /><br />&lt;/div&gt;</p><br /><p>&lt;/div&gt;<br /><br />&lt;div id="footer"&gt;footer&lt;/div&gt;<br /><br />&lt;/body&gt;<br /><br />&lt;/html&gt;<br /><br /></p><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-7336563250937411282008-03-09T18:10:00.000-07:002008-03-10T10:10:19.280-07:00free topo, satellite map from Terraserver<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9SlZlonnYI/AAAAAAAAAok/wYPmq8WLKGk/s1600-h/topo.jpg"><img id="BLOGGER_PHOTO_ID_5175943730773335426" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9SlZlonnYI/AAAAAAAAAok/wYPmq8WLKGk/s320/topo.jpg" border="0" /></a><br /><div><div>terraserver web service updated lately on <a href="http://terraserver-usa.com/TerraService2.asmx" target="TerraService WSDL">TerraService WSDL</a>:<br /><br /><a href="http://terraserver-usa.com/TerraService2.asmx">http://terraserver-usa.com/TerraService2.asmx</a><br /><br />need this <span style="color:#ff0000;">free map online application</span> please contact me at <a href="http://www.costudio.com/">costudio</a>.<br /><br /><br />The following operations are supported.<br /><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=ConvertUtmPtToLonLatPt">ConvertUtmPtToLonLatPt</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=ConvertLonLatPtToUtmPt">ConvertLonLatPtToUtmPt</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetTileMetaFromLonLatPt">GetTileMetaFromLonLatPt</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetLatLonMetrics">GetLatLonMetrics</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetPlaceList">GetPlaceList</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=CountPlacesInRect">CountPlacesInRect</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetAreaFromTileId">GetAreaFromTileId</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetPlaceFacts">GetPlaceFacts</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetAreaFromRect">GetAreaFromRect</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetAreaFromPt">GetAreaFromPt</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetPlaceListInRect">GetPlaceListInRect</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=ConvertPlaceToLonLatPt">ConvertPlaceToLonLatPt</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=ConvertLonLatPtToNearestPlace">ConvertLonLatPtToNearestPlace</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetTile">GetTile</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetTileMetaFromTileId">GetTileMetaFromTileId</a><br /><a href="http://terraserver-usa.com/TerraService2.asmx?op=GetTheme">GetTheme</a><br /><br /><br />infor from: <a href="http://terraserver-usa.com/webservices.aspx">http://terraserver-usa.com/webservices.aspx</a></div></div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-77149153747181033912008-03-07T23:34:00.000-08:002008-03-07T23:41:23.032-08:00SQL Server 2005 Express Limitation<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9JCsFonnWI/AAAAAAAAAoU/IIzDJ546ZiQ/s1600-h/sql.jpg"><img id="BLOGGER_PHOTO_ID_5175272246996344162" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9JCsFonnWI/AAAAAAAAAoU/IIzDJ546ZiQ/s320/sql.jpg" border="0" /></a><br /><div>Functionally, SQL Server Express is in many ways the same as the full edition of SQL Server. Many databases created in other editions of SQL Server can work transparently.<br /><br />The <span style="color:#ff0000;"><strong>limitations</strong></span> to Express, however, need to be spelled out in detail:<br /><ul><br /><li>No built-in management tools. Microsoft has a query tool called Express Manager that is available as a separate download, but as of this writing, it is an unsupported pre-release package.</li><br /><br /><li>Support for only 1 CPU. In systems with multiple CPUs, Express will only bind to one CPU at a time, and it cannot run queries in parallel.</li><br /><br /><li>1 GB RAM. Express cannot use more than 1 GB of RAM at a time for queries and data pages. The program's own memory footprint is not counted.</li><br /><br /><li>4 GB maximum database size. No one database in Express can be larger than 4 GB, but there is no limit on the number of databases you can use in Express.</li><br /><br /><li>No analysis or reporting services. Data mining, Data Transformation Services (DTS) and reporting functions are not available for Express.</li><br /><br /><li>Other functions not available in Express include clustering or mirroring, full-text indexing or searching, SQLMail, indexed views, partitioned views and SQL Agent.<br /></li><br /></ul>If the environment or application you're working on requires any of these, the full version of SQL Server may be the better choice rather than trying to work around the limitations of Express. Sometimes workarounds are possible -- SQL Agent functions, for instance, might be mimicked through VBScript and the Task Scheduler -- but for projects with a broad scope, it might be easier to use the full edition of SQL Server.</div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-39714691848066499722008-03-07T15:37:00.000-08:002008-03-07T16:08:35.758-08:00KML MIME Types<a href="http://bp1.blogger.com/_tC0Mw9eeuwQ/R9HSm1onnVI/AAAAAAAAAoM/LfQcOcMsbbI/s1600-h/googlemap.jpg"><img id="BLOGGER_PHOTO_ID_5175149011499720018" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp1.blogger.com/_tC0Mw9eeuwQ/R9HSm1onnVI/AAAAAAAAAoM/LfQcOcMsbbI/s320/googlemap.jpg" border="0" /></a><br /><div>When responding to a request from Google Earth (or any Earth browser), a KML server must follow a certain set of rules so that Google Earth can correctly interpret its responses.<br /><p>Upon success, the server must return a response code of HTTP 200 and set the response's content-type to a suitable MIME type, as described here. </p><br /><p>Google Earth reads KML and KMZ files. The MIME type for KML files is<br /><br /><span style="color:#ff0000;"><strong>application/vnd.google-earth.kml+xml<br /><br /></strong></span>The MIME type for KMZ files is </p><p><span style="color:#ff0000;"><strong>application/vnd.google-earth.kmz</strong></span><br />For Apache, add these lines to the httpd.conf file:</p><br /><p><span style="color:#ff0000;">AddType application/vnd.google-earth.kml+xml .kml<br />AddType application/vnd.google-earth.kmz .kmz</span><br />See the Microsoft documentation for details on setting up MIME types on Microsoft's IIS. </p><br /><p>The body of the response must contain valid KML data, including the XML declaration (&lt;?xml version="1.0" encoding="UTF-8"?&gt;). If the server returns invalid KML, the Network Link will stop, deactivate, and output an error message.</p><br /><p></p></div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-71459785125459669692008-03-07T13:08:00.000-08:002008-03-07T13:40:44.804-08:00Auto Scrolling DIV tags<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9Gv3VonnUI/AAAAAAAAAoE/4xXDjKuCbpM/s1600-h/css.jpg"><img id="BLOGGER_PHOTO_ID_5175110812060589378" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R9Gv3VonnUI/AAAAAAAAAoE/4xXDjKuCbpM/s320/css.jpg" border="0" /></a><br /><div>&lt;div id="demoID" style="overflow: auto; height: 200px; width:300px;"&gt;<br /><br />your content here.<br /><br />&lt;/div&gt; </div><br /><br /><div id="demoID" style="OVERFLOW: auto; WIDTH: 300px; HEIGHT: 200px"><br />Dow falls below 12,000 after jobs report<br /><br /><br />Stocks slid again today after a worse-than-expected jobs report added to worries about the health of the economy.<br /><br />At 2:15 p.m. ET, the Dow Jones Industrial Average was down 171 points to 11,869, falling below the key 12,000 level. The Dow had been trading around that level for most of the morning. The Dow plunged 215 points on Thursday.<br /><br />The Nasdaq Composite Index was down 21 points to 2,198, and the Standard &amp; Poor's 500 Index had lost 16 points to 1,288. The S&amp;P lost 29 points Thursday to close at 1,304, the lowest closing level since Sept. 22, 2006.<br /><br /></div><div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-66818687141760406242008-03-05T22:02:00.000-08:002008-03-07T11:55:21.160-08:00Google Gears mobile<a href="http://bp0.blogger.com/_tC0Mw9eeuwQ/R8-M8PNfILI/AAAAAAAAAn8/j2N2GcDWgTE/s1600-h/workerpool.gif"><img id="BLOGGER_PHOTO_ID_5174509463375126706" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://bp0.blogger.com/_tC0Mw9eeuwQ/R8-M8PNfILI/AAAAAAAAAn8/j2N2GcDWgTE/s320/workerpool.gif" border="0" /></a><br />Google Gears mobile is for jet-setters who need on-the-go access to Web applications but who also need the ability to work within those applications if <span style="color:#3333ff;">their wireless signal gets interrupted or they are not in an area where wireless service is available</span>. Initially, Google Gears for mobile will work on devices running Microsoft Windows Mobile 5 and 6.<br /><br /><br />Google Gears for mobile enables developers to <span style="color:#3333ff;">deploy applications directly to mobile browsers rather than develop native applications</span>. He wrote that deploying directly to the browsers simplifies the process by allowing developers to use the same coding skills to create mobile apps. Additionally, the mobile Web applications can <span style="color:#3333ff;">work offline</span>, meaning users can leverage them when they are disconnected from the network.<br /><br /><br />"Google Gears Beta is an open source browser extension that enables web applications to provide offline functionality using the following JavaScript APIs:<br /><br /><ul><br /><li>Store and serve application resources locally</li><br /><li>Store data locally in a fully-searchable relational database</li><br /><li>Run asynchronous Javascript to improve application responsiveness</li><br /></ul>from <a href="http://gears.google.com/">http://gears.google.com/</a> "<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-73357906713281940862008-03-03T21:46:00.000-08:002008-03-03T23:26:25.264-08:00FTP listener to get latest files to local<a href="http://www.costudio.com"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp2.blogger.com/_tC0Mw9eeuwQ/R8z4_ICAvDI/AAAAAAAAAno/zJ2YO04KInY/s320/dataretrieval.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5173783835313224754" /></a><br />this is FTP client tool in C#. Basic function please check my post <a href="http://www.hoojo.com/2008/03/make-ftp-client-with-ftpwebrequest-in-c.html">make FTP client with FtpWebRequest in C Sharp</a>, need this tools please contact me at <a href="http://www.costudio.com/">costudio</a>.<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-58312834050605655222008-03-03T21:30:00.000-08:002008-03-03T23:58:39.924-08:00make FTP client with FtpWebRequest in C sharp<a href="http://bp3.blogger.com/_tC0Mw9eeuwQ/R8z6BYCAvEI/AAAAAAAAAnw/yqrIa8LqMLA/s1600-h/tools.jpg"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://bp3.blogger.com/_tC0Mw9eeuwQ/R8z6BYCAvEI/AAAAAAAAAnw/yqrIa8LqMLA/s320/tools.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5173784973479558210" /></a><br /><br /><span style="color:#ff0000;">Get Remote File List</span><br /><span style="color:#ff0000;"></span><br />private ArrayList GetRemoteFiles()<br />{<br />ArrayList al = new ArrayList();<br /><br /><br />FtpWebRequest fwr = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpIP));<br />fwr.Credentials = new NetworkCredential(ftpUser, ftpPass);<br />fwr.Method = WebRequestMethods.Ftp.ListDirectory;<br />fwr.UsePassive = false;<br /><br />StreamReader sr = new StreamReader(fwr.GetResponse().GetResponseStream());<br />string str = sr.ReadLine();<br />while (str != null)<br />{<br />al.Add(str);<br />str = sr.ReadLine();<br />}<br /><br />sr.Close();<br />sr = null;<br /><br />fwr = null;<br /><br />return al;<br />}<br /><br /><br /><br /><span style="font-family:georgia;color:#ff0000;">Download File to Local</span><br /><br />private void DownloadFile(string remoteFile, string localFile)<br />{<br />try<br />{<br /><br />string uri = @"ftp://" + ftpIP + @"/" + remoteFile;<br />FtpWebRequest request = (FtpWebRequest)WebRequest.Create(uri);<br />request.Method = WebRequestMethods.Ftp.DownloadFile;<br />request.UsePassive = false;<br />request.Credentials = new NetworkCredential(ftpUser, ftpPass);<br />request.UseBinary = true;<br />FtpWebResponse response = (FtpWebResponse)request.GetResponse();<br /><br />Stream responseStream = response.GetResponseStream();<br /><br />FileStream writeStream = new FileStream(localFile, FileMode.Create, FileAccess.Write);<br /><br />ReadWriteStream(responseStream, writeStream);<br />response.Close();<br />}<br />catch (Exception e)<br />{<br />throw new Exception(e.Message);<br />}<br /><br /><br />}<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.comtag:blogger.com,1999:blog-6754375.post-4294982219459353442008-02-29T14:40:00.000-08:002008-02-29T16:21:02.792-08:00XML: invalid Character Was Found in Text Content<span style="color:#ff0000;"><strong>SYMPTOMS</strong></span><br />When parsing XML that contains "special characters" using the Microsoft XML parser (MSXML), the parser may report the following error message at the line and position of the first special character:<br />An Invalid character was found in text content.<br />Back to the top<br /><br /><span style="color:#ff0000;"><strong>CAUSE</strong></span><br />The XML document is not marked with the proper character encoding scheme.<br />Back to the top<br /><br /><span style="color:#ff0000;"><strong>RESOLUTION</strong></span><br />Specify the proper encoding scheme in the XML processing instruction.<br /><br />- or -<br /><br />Re-encode the XML data as proper UTF-8.<br /><br /><br />for sample:<br /><br /><br />&lt;?xml version="1.0" encoding="iso-8859-1" ?&gt;<br /><br />&lt;rootelement&gt; ...XML data...<br /><br />&lt;/rootelement&gt;<div class="blogger-post-footer"><script type="text/javascript"><!-- google_ad_client = "pub-7982891240569125"; /* 468x60, created 3/6/08 */ google_ad_slot = "6294167700"; google_ad_width = 468; google_ad_height = 60; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div>Jun Wanghttp://www.blogger.com/profile/05930246182298932131noreply@blogger.com