<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Montaque</title><subtitle type="html">Nothing is impossible for MS .NET</subtitle><id>http://msmvps.com/blogs/montaque/atom.aspx</id><link rel="alternate" type="text/html" href="http://msmvps.com/blogs/montaque/default.aspx" /><link rel="self" type="application/atom+xml" href="http://msmvps.com/blogs/montaque/atom.aspx" /><generator uri="http://communityserver.org" version="4.0.30619.63">Community Server</generator><updated>2004-02-04T05:03:00Z</updated><entry><title>Invalid file name for monitoring: XXX path</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2006/06/08/100092.aspx" /><id>/blogs/montaque/archive/2006/06/08/100092.aspx</id><published>2006-06-08T03:20:00Z</published><updated>2006-06-08T03:20:00Z</updated><content type="html">&lt;P&gt;In .NET 1.1 , If you write code like this &lt;/P&gt;
&lt;P&gt;Cache.Add("key",DateTime.Now.ToString(),new System.Web.Caching.CacheDependency(@"&lt;U&gt;&lt;FONT color=#ff0000&gt;C:/Common.config&lt;/FONT&gt;&lt;/U&gt;"),System.Web.Caching.Cache.NoAbsoluteExpiration,System.Web.Caching.Cache.NoSlidingExpiration,System.Web.Caching.CacheItemPriority.Default,null);&lt;/P&gt;
&lt;P&gt;please pay attention to the filename, even this file path is valid and you will always get the error that say invalid file name for monitoring.&lt;/P&gt;
&lt;P&gt;So what happend? Permission? Or Any IIS Lock Software?&lt;/P&gt;
&lt;P&gt;hehe, the problem is the you must write a valid file path like &lt;A&gt;\\Server\A.txt&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;or&amp;nbsp; C:\\Yourfile.path , So&amp;nbsp;the problem is that&amp;nbsp; .NEt 1.1 determine the file path via the following code&lt;/P&gt;
&lt;P&gt;internal static bool IsAbsolutePhysicalPath(string path)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((path != null) &amp;amp;&amp;amp; (path.Length &amp;gt;= 3))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (path.StartsWith(@"&lt;U&gt;\\&lt;/U&gt;"))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (char.IsLetter(path[0]) &amp;amp;&amp;amp; (path[1] == ':'))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (path[2] == '&lt;U&gt;\\&lt;/U&gt;');&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;BR&gt;}&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;So change your filepath to C:\Common.config will ease the exception.ha .&lt;/P&gt;
&lt;P&gt;this issue has been fixed in .net 2.0,here is the code&lt;/P&gt;
&lt;P&gt;internal static bool IsAbsolutePhysicalPath(string path)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((path == null) || (path.Length &amp;lt; 3))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((path[1] == ':') &amp;amp;&amp;amp; UrlPath.IsDirectorySeparatorChar(path[2]))&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return UrlPath.IsUncSharePath(path);&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;which char is a valid directory separator? like thi&lt;/P&gt;
&lt;P&gt;private static bool IsDirectorySeparatorChar(char ch)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ch != '\\')&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (ch == '/');&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=100092" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>What's the first web 2.0 product of microsoft?</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2006/05/30/97693.aspx" /><id>/blogs/montaque/archive/2006/05/30/97693.aspx</id><published>2006-05-30T00:56:00Z</published><updated>2006-05-30T00:56:00Z</updated><content type="html">&lt;P&gt;Because of the unexpected shutdown, my outlook can not start up and it's trying to fix the storge files behind.&lt;/P&gt;
&lt;P&gt;then I open IE and use OWA( outlook web access). as expected,there are lots of junk mail,:)so I press delete one by one, the email are dropped . however ,the screen does not refresh ,seems it send the delete command asynchronously. and the request/response reveived are kind of web-formatted xml. so Is owa the first web 2.0 app of microsoft? &lt;/P&gt;
&lt;P&gt;&amp;lt;?xml version='1.0'?&amp;gt;&amp;lt;D:move xmlns:D='DAV:'&amp;gt;&amp;lt;D:target&amp;gt;&amp;lt;D:href&amp;gt;http://Server/exchange/mmmm/Inbox/%E4%BB%8A%E6%97%A5%E7%84%A6%E7%82%B9-%E2%80%9C%E4%B8%96%E7%95%8C%E9%93%B6%E8%A1%8C%E6%95%B2%E5%93%8D%E6%96%B0%E5%85%B4%E5%B8%82%E5%9C%BA%E8%AD%A6%E9%92%9F%E2%80%9D.EML&amp;lt;/D:href&amp;gt;&amp;lt;/D:target&amp;gt;&amp;lt;/D:move&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=97693" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>Sometimes, Hello world does not work;)</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/12/30/28401.aspx" /><id>/blogs/montaque/archive/2004/12/30/28401.aspx</id><published>2004-12-30T15:40:00Z</published><updated>2004-12-30T15:40:00Z</updated><content type="html">&lt;P&gt;I add a web method to existing web service, which return array of arraylist as the result.&lt;/P&gt;
&lt;P&gt;then everything workes worse, the client can not invoke either of the web method&lt;/P&gt;
&lt;P&gt;here is a simple code&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;public service1: WebService &lt;BR&gt;{ &lt;BR&gt;&amp;nbsp;&lt;BR&gt;public service1() &lt;BR&gt;{ &lt;BR&gt;} &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [WebMethod] &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public string HelloWorld() &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Hello World, I am running in montaque notebook .NET"; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [WebMethod] &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public ArrayList [] TestArrayList() &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ArrayList [] ar=new ArrayList[1]; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ar[0].Add(1); &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ar[0].Add(2); &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return ar; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;} &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;when I test the code in the .net latest build ,40903, get the same result &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=28401" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Automate Business Process with Biztalk HWS and Visual Studio.net</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/10/30/17292.aspx" /><id>/blogs/montaque/archive/2004/10/30/17292.aspx</id><published>2004-10-30T14:45:00Z</published><updated>2004-10-30T14:45:00Z</updated><content type="html">&lt;P&gt;a great article about that from msdn mag.&lt;/P&gt;&lt;A href="http://msdn.microsoft.com/msdnmag/issues/04/10/HumanWorkflowServices/default.aspx"&gt;http://msdn.microsoft.com/msdnmag/issues/04/10/HumanWorkflowServices/default.aspx&lt;/A&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=17292" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>Adjust the datagrid column with in edit mode</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/23/5353.aspx" /><id>/blogs/montaque/archive/2004/04/23/5353.aspx</id><published>2004-04-23T12:18:00Z</published><updated>2004-04-23T12:18:00Z</updated><content type="html">&lt;font color="#000000"&gt;&lt;font face="Courier New"&gt; void MyGrid_Edit(object sender, DataGridCommandEventArgs e) {&lt;br /&gt;      MyGrid.EditItemIndex = e.Item.ItemIndex;&lt;br /&gt;      BindMyGrid();&lt;br /&gt;&lt;br /&gt;      DataGridItem line = MyGrid.Items[e.Item.ItemIndex];&lt;br /&gt;      TextBox tb1 = (TextBox)line.Cells[0].Controls[0];&lt;br /&gt;      TextBox tb2 = (TextBox)line.Cells[1].Controls[0];&lt;br /&gt;&lt;br /&gt;      tb1.Width = Unit.Percentage(100);&lt;br /&gt;      tb2.Width = Unit.Percentage(100);&lt;br /&gt;      tb2.TextMode = TextBoxMode.MultiLine;&lt;br /&gt;    }&lt;/font&gt;&lt;br /&gt;refer: &lt;a href="http://www.atmarkit.co.jp/fdotnet/dotnettips/082wideedit/wideedit.html"&gt;http://www.atmarkit.co.jp/fdotnet/dotnettips/082wideedit/wideedit.html&lt;/a&gt;&lt;/font&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=5353" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>Remember to invoke  FlushFinalBlock() </title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/09/4787.aspx" /><id>/blogs/montaque/archive/2004/04/09/4787.aspx</id><published>2004-04-09T11:49:00Z</published><updated>2004-04-09T11:49:00Z</updated><content type="html">&lt;p&gt;When encrypting a stream with System.Security.DesCryptoServiceProvider, code sniipt like the following.&lt;/p&gt;
&lt;p&gt;Byte []EncryedText=Convert.FromBase64String(this.textBox3.Text) ;&lt;/p&gt;
&lt;p&gt;   System.IO.MemoryStream EncryptedStream=new System.IO.MemoryStream(EncryedText);&lt;/p&gt;
&lt;p&gt;   System.IO.MemoryStream OutMS=new System.IO.MemoryStream();&lt;/p&gt;
&lt;p&gt;   EncryptedStream.Seek(0,System.IO.SeekOrigin.Begin);&lt;/p&gt;
&lt;p&gt;   System.Security.Cryptography.DESCryptoServiceProvider x_des=new DESCryptoServiceProvider();&lt;/p&gt;
&lt;p&gt;   //??&lt;/p&gt;
&lt;p&gt;   x_des.IV=m_IV;&lt;br /&gt;   x_des.Key=m_Key;&lt;br /&gt;   &lt;br /&gt;   &lt;br /&gt;   //???&lt;br /&gt;   System.Security.Cryptography.CryptoStream encryptStream =new CryptoStream(OutMS,x_des.CreateDecryptor(),System.Security.Cryptography.CryptoStreamMode.Write);&lt;/p&gt;
&lt;p&gt;   &lt;/p&gt;
&lt;p&gt;   encryptStream.Write(EncryedText,0,EncryedText.Length);&lt;br /&gt;   &lt;font color="#ff0000"&gt;encryptStream.FlushFinalBlock();&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;   Byte[] outText=new byte[(Int32)OutMS.Length];&lt;br /&gt;   OutMS.Seek(0,System.IO.SeekOrigin.Begin);&lt;br /&gt;   //???????&lt;br /&gt;   OutMS.Read(outText,0,(Int32)OutMS.Length);&lt;br /&gt;   MessageBox.Show(System.Text.Encoding.Unicode.GetString(outText));&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;if the &lt;font color="#ff0000"&gt;FlushFinalBlock&lt;/font&gt;&lt;font color="#000000"&gt; is missed, you probably will not get the full encrypted text&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4787" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Get public key from certificate, and Convert the key to the RSAParameter</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/08/4767.aspx" /><id>/blogs/montaque/archive/2004/04/08/4767.aspx</id><published>2004-04-08T17:28:00Z</published><updated>2004-04-08T17:28:00Z</updated><content type="html"> byte[] pk = cer.GetPublicKey();&lt;br /&gt;   byte[] m = new byte[pk.Length - 3];&lt;br /&gt;   Buffer.BlockCopy(pk, 0, m, 0, m.Length);&lt;br /&gt;   byte[] e = new byte[3];&lt;br /&gt;   Buffer.BlockCopy(pk, m.Length, e, 0, 3);&lt;br /&gt;   String key = "&amp;lt;RSAKeyValue&amp;gt;&amp;lt;Modulus&amp;gt;" + Convert.ToBase64String(m)+"&amp;lt;/Modulus&amp;gt;&amp;lt;Exponent&amp;gt;"+Convert.ToBase64String(e)+"&amp;lt;/Exponent&amp;gt;&amp;lt;/RSAKeyValue&amp;gt;";&lt;br /&gt;   Console.WriteLine(key);&lt;br /&gt;   RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();&lt;br /&gt;   rsa.FromXmlString(key);&lt;br /&gt;   Console.WriteLine(rsa.ToXmlString(false));&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4767" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Microsoft SQLXML</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/07/4718.aspx" /><id>/blogs/montaque/archive/2004/04/07/4718.aspx</id><published>2004-04-07T11:14:00Z</published><updated>2004-04-07T11:14:00Z</updated><content type="html">&lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=ca1cc72b-6390-4260-b208-2058c0bfd7de&amp;amp;languageid=f49e8428-7071-4979-8a67-3cffcb0c2524&amp;amp;displaylang=en"&gt;SQLXML&lt;/a&gt; 3.0 extends the built-in XML capabilities of SQL Server 2000 with technology to create XML Web services from SQL Server stored procedures or server-side XML templates. SQLXML 3.0 also includes extensions to the .NET Framework that provide SQLXML programmability to the languages supported by Microsoft® Visual Studio® .NET, including C# and Microsoft Visual Basic® .NET.&lt;/p&gt;
&lt;h2 class="subHeadingHeavy"&gt;System Requirements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;Supported Operating Systems: &lt;/b&gt;Windows 2000, Windows NT, Windows XP&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;font class="detailsContent"&gt;The Web Services toolkit download doesn't include the Webcasts; please download them separately.&lt;br /&gt;&lt;br /&gt;SQLXML 3.0 is optimized for use with Visual Studio .NET. &lt;br /&gt;&lt;br /&gt;This release is installed using the Microsoft Windows® Installer 2.0. You might need to upgrade your installer to Windows Installer 2.0 prior to installing SQLXML 3.0. &lt;br /&gt;&lt;br /&gt;Additionally, users might need to install the Microsoft SOAP Toolkit 2.0&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4718" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Public Keys are not the same</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/03/4590.aspx" /><id>/blogs/montaque/archive/2004/04/03/4590.aspx</id><published>2004-04-03T10:58:00Z</published><updated>2004-04-03T10:58:00Z</updated><content type="html">&lt;p&gt;Aim: I wanna guarantee that only signed assembly have the access to my class library. SO I make use of the .net StrongNameIdentityPermissionAttribute to protect my assembly. When testing ,I encounter the different public keys of a same public/private key pair.&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;1. Extract the public key from the keyfile&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;Sn -tp montaque.snk&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;the public key echos:&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;Public key is&lt;br /&gt;0702000000240000525341320004000001000100eb3a0ffb39f8d13e553d77c40399287cb7f29e&lt;br /&gt;d6199da3daa9a31db7c437e0c550bae8e4bad69b7aad37ff9acc541166256d384176fe22ae6b1a&lt;br /&gt;0f5204c8c8a5ba7c8f796506fb9f4621db157830e3faef0652a89ea30c3fe53b45033c7466a3ed&lt;br /&gt;a68d8d40b4909d03e91c6f72d43f1740c10d701e74c500b8c9f491c11ae2b90fd7494f824a7ebb&lt;br /&gt;f40a2aefc8886b8f7396ef3d0e5bf2d78c66db8b69a36fdc6ed378171d5837c43c871d0ce7c47b&lt;br /&gt;61b53c36234f600072e8dfa17c13814eec657eac534c8fcd5291721f702e9b4e7d1b6c995af685&lt;br /&gt;6018e624a4435eb3d4681f83c636e374d8cf7ec38829f0b68071ed7fdf2dc243b87aa62e1d8fcd&lt;br /&gt;d65fc9773c297f59d46d270e7ffadcb457abf1ed7a73734d17e41564a223703085318bb81b21ba&lt;br /&gt;6e1724dbb32b4e79f10fc407ef835429014fe1e34b7c8e07316b5064757c47a1daba35cd3f9d53&lt;br /&gt;ee99f6ee7c0a8a5e6c7ac7e56173b9a8e02a02b301a5415dfe2089e827ae372e4a5b65058a892d&lt;br /&gt;b654669485ea9e6238f5b4a69195d58cb345586c781e0f50a23fe67c6fdd7c766f867fed718bd4&lt;br /&gt;98e8cd95dbcad5e48f0ebef977c779c71329aa6ab5c1c6596a7b8fb0df0c24ff05d967e2fa97e8&lt;br /&gt;c9e0844074b7b7bc6f45fa86d4b55cd09c3bcab03f28670e5d9fa9ad1383eeb1bbe201e290b38d&lt;br /&gt;18195d867ee066f10dd9277eaf60d45c737cbb301a955c88bf60b203e8b0ac13a887c0003d5d45&lt;br /&gt;131c6a88a8c59a094ea69fa0440b4f78fe8bb5fa1b8957ae6ae9c9671e02b08cec48b42023d2d1&lt;br /&gt;7c5ef152596caa2a890027&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;Public key token is 7a2a95f64f29bc4f&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#006400"&gt;&lt;font color="#ff0000"&gt;&lt;/font&gt;the key length is &lt;u&gt;1192&lt;/u&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;2. extract the public key of the signed assembly.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;Public key is&lt;br /&gt;0024000004800000940000000602000000240000525341310004000001000100eb3a0ffb39f8d1&lt;br /&gt;3e553d77c40399287cb7f29ed6199da3daa9a31db7c437e0c550bae8e4bad69b7aad37ff9acc54&lt;br /&gt;1166256d384176fe22ae6b1a0f5204c8c8a5ba7c8f796506fb9f4621db157830e3faef0652a89e&lt;br /&gt;a30c3fe53b45033c7466a3eda68d8d40b4909d03e91c6f72d43f1740c10d701e74c500b8c9f491&lt;br /&gt;c11ae2b9&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;Public key token is 9bcbe75a245746b6&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;I am suprised that why two keys are not equal, does they have some relationship like mapping or hashing?&lt;/font&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;sn -Tp mysignedassembly.dll&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#008000"&gt;&lt;/font&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4590" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Message Queuing by MQSeries with C# </title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/02/4550.aspx" /><id>/blogs/montaque/archive/2004/04/02/4550.aspx</id><published>2004-04-02T10:01:00Z</published><updated>2004-04-02T10:01:00Z</updated><content type="html">&lt;font size="2"&gt; &lt;/font&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;MSMQ is the well-known Message API for windows developers. You can use MSMQ API directly by using System.Messaging class. Sometimes user needs to use IBM MQSeries especially for mainframe developers. IBM is providing a set of APIs Dotnet support pack using this we can access MQSeries. In this article I will explain the way to get and put messages using MQSeries and also will show the way to identify a particular message in queue of messages.  &lt;/font&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;First of all we need to install the MQSeries Server in Windows 2000 server and need to install the MQSeries Client and Dotnet support pack in the client machine. Then we need to create QueueManager, Queue and Channel in MQSeries Server.&lt;/font&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;You can download the &lt;/font&gt;&lt;a href="http://www-3.ibm.com/software/integration/support/supportpacs/individual/ma7p.html"&gt;Dotnet support pack&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; at this link.&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt; &lt;/div&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt; &lt;/div&gt;
&lt;div&gt;&lt;font face="Verdana" size="2"&gt;refer: &lt;a href="http://www.dotnetforce.com/SiteContent.aspx?Type=10000&amp;amp;Folder=article&amp;amp;File=article20032005001.xml"&gt;http://www.dotnetforce.com/SiteContent.aspx?Type=10000&amp;amp;Folder=article&amp;amp;File=article20032005001.xml&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4550" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>Convert C code to C#? </title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/01/4497.aspx" /><id>/blogs/montaque/archive/2004/04/01/4497.aspx</id><published>2004-04-01T14:08:00Z</published><updated>2004-04-01T14:08:00Z</updated><content type="html">&lt;span class="Article_FullDescription"&gt;Tool to go from C to Java:&lt;br /&gt;&lt;a href="http://www.portinggurus.org/Navigator.asp?link=http://in.tech.yahoo.com/020513/94/1nxuw.html"&gt;http://www.portinggurus.org/Navigator.asp?link=http://in.tech.yahoo.com/020513/94/1nxuw.html&lt;/a&gt;  &lt;br /&gt; &lt;br /&gt;Tool to go from Java to C#:&lt;br /&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=46BEA47E-D47F-4349-9B4F-904B0A973174&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=46BEA47E-D47F-4349-9B4F-904B0A973174&amp;amp;displaylang=en&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4497" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Authorization and Profile Application Block</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/01/4492.aspx" /><id>/blogs/montaque/archive/2004/04/01/4492.aspx</id><published>2004-04-01T13:51:00Z</published><updated>2004-04-01T13:51:00Z</updated><content type="html">&lt;p&gt;The Authorization and Profile Application Block is a reusable code component that builds on the capabilities of the Microsoft .NET Framework to help you perform authorization and access profile information.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;The Authorization and Profile Application Block provides you with an infrastructure for role-based authorization and access to profile information. The block allows you to:&lt;br /&gt;? Authorize a user of an application or system.&lt;br /&gt;? Use multiple authorization storage providers.&lt;br /&gt;? Plug in business rules for action validation.&lt;br /&gt;? Map multiple identities to a single user.&lt;br /&gt;? Access profile information that can be stored in multiple profile stores.&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Download: &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=ba983ad5-e74f-4be9-b146-9d2d2c6f8e81&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=ba983ad5-e74f-4be9-b146-9d2d2c6f8e81&amp;amp;displaylang=en&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4492" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title> using the Indexing Service with .Net</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/04/01/4486.aspx" /><id>/blogs/montaque/archive/2004/04/01/4486.aspx</id><published>2004-04-01T13:32:00Z</published><updated>2004-04-01T13:32:00Z</updated><content type="html">&lt;p class="heading"&gt;What is the Indexing Service?&lt;/p&gt;
&lt;p&gt;Microsoft &lt;a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/indexsrv/html/indexingservicestartpage_6td1.asp?frame=true"&gt;Indexing Service&lt;/a&gt; is a service that provides a means of quickly searching for files on the machine. The most familiar usage of the service is on web servers, where it provides the functionality behind site searches. It is built into Windows 2000 and 2003. It provides a straightforward way to index and search your web site.&lt;/p&gt;
&lt;p&gt;Setting up the Indexing Service is explained at &lt;a href="http://www.windowswebsolutions.com/Articles/Index.cfm?ArticleID=20593"&gt;windowswebsolutions.com&lt;/a&gt; and will not be covered here.&lt;/p&gt;
&lt;p class="heading"&gt;Connecting to the Indexing Service&lt;/p&gt;
&lt;p&gt;The Indexing Service exposes itself to the developer as as ADO.Net provider &lt;strong&gt;MSIDXS&lt;/strong&gt; with the data source equal to the indexing catalog name. For example, the connection string used in searching this site is&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Provider="MSIDXS";Data Source="idunno.org";&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As with any other ADO.Net provider you use the connection string property of the System.Data.OleDb.OleDbConnection object.&lt;/p&gt;
&lt;p class="code"&gt;using System.Data.OleDb;&lt;br /&gt;protected OleDbConnection odbSearch;&lt;br /&gt;odbSearch.ConnectionString = &lt;br /&gt;  &lt;strong&gt;"Provider= \"MSIDXS\";Data Source=\"idunno.org\";"&lt;/strong&gt;;&lt;br /&gt;odbSearch.Open();&lt;br /&gt;// Query and process results&lt;br /&gt;odbSearch.Close(); &lt;/p&gt;
&lt;p&gt;You can also use the connection string in Visual Studio by dragging and dropping an OleDbConnection onto your asp.net page and setting the ConnectionString property in the Properties tab.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;refer: &lt;a href="http://idunno.org/dotNet/indexserver.aspx"&gt;http://idunno.org/dotNet/indexserver.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4486" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Passing a session id to the server</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/03/24/4158.aspx" /><id>/blogs/montaque/archive/2004/03/24/4158.aspx</id><published>2004-03-24T06:39:00Z</published><updated>2004-03-24T06:39:00Z</updated><content type="html">&lt;p&gt;With a remoting service running in IIS I can access the session state, user,&lt;br /&gt;application, etc using the &lt;a href="http://dotnet247.com/247reference/System/Runtime/Remoting/Services/RemotingService.aspx"&gt;RemotingService&lt;/a&gt; class.&lt;br /&gt;&lt;br /&gt;What is the best way to pass a session from a console client to the server?&lt;br /&gt;I assume this must be done with the HTTP header, but what is the best way to&lt;br /&gt;do this?&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;the same question in &lt;a href="http://dotnet247.com/247reference/msgs/1/5553.aspx"&gt;http://dotnet247.com/247reference/msgs/1/5553.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=4158" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>A wonderful Web.config Editor</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/03/16/3967.aspx" /><id>/blogs/montaque/archive/2004/03/16/3967.aspx</id><published>2004-03-17T04:15:00Z</published><updated>2004-03-17T04:15:00Z</updated><content type="html">&lt;a href="https://www.hunterstone.com/hsstore/products.aspx"&gt;https://www.hunterstone.com/hsstore/products.aspx&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=3967" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>How to skip Windows XP Login Splash Windows.</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/02/18/3001.aspx" /><id>/blogs/montaque/archive/2004/02/18/3001.aspx</id><published>2004-02-18T09:39:00Z</published><updated>2004-02-18T09:39:00Z</updated><content type="html">Click Start, Run and type "control userpasswords2", and click Ok. &lt;br /&gt;Uncheck "Users must enter a user name and password to use this computer" &lt;br /&gt;option, and click Ok&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=3001" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Microsoft's top-secret code is leaked</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/02/14/2857.aspx" /><id>/blogs/montaque/archive/2004/02/14/2857.aspx</id><published>2004-02-14T11:55:00Z</published><updated>2004-02-14T11:55:00Z</updated><content type="html">&lt;p&gt;Windows source code is Microsoft’s crown jewel, one that is guarded jealously. The company has to know exactly what source code is shared with partners and when.&lt;/p&gt;
&lt;p&gt;Some background: At one time, Microsoft shared portions of the Windows NT and 2000 source code with two partners working on software tools that would allow other software developed for Windows to run on Unix. If I recall correctly, the amount was 8 million or so lines of code for one operating system.&lt;/p&gt;
&lt;p&gt;That works out about right for the size of the leak, 13.5 million lines of code, according to people who have seen it. The timing fits, too, considering the apparent age of the code and when the partners had access to it. Folks who have seen the source code told me the code date appears to be July 25, 2000, which would be about right for Windows 2000 Service Pack 1.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=2857" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author></entry><entry><title>C#&lt;--&gt;VB.NET Converter</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/02/14/2855.aspx" /><id>/blogs/montaque/archive/2004/02/14/2855.aspx</id><published>2004-02-14T10:30:00Z</published><updated>2004-02-14T10:30:00Z</updated><content type="html">&lt;p&gt;From C# to VB.NET &lt;a href="http://authors.aspalliance.com/aldotnet/examples/translate.aspx"&gt;http://authors.aspalliance.com/aldotnet/examples/translate.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;VB.NET to C#  &lt;a href="http://www.kamalpatel.net/ConvertCSharp2VB.aspx"&gt;http://www.kamalpatel.net/ConvertCSharp2VB.aspx&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=2855" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Montaque and Amy got married at 2004/02/08.:)</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/02/10/2686.aspx" /><id>/blogs/montaque/archive/2004/02/10/2686.aspx</id><published>2004-02-10T13:58:00Z</published><updated>2004-02-10T13:58:00Z</updated><content type="html">&lt;p&gt;the photos are not ready now&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=2686" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry><entry><title>Invalid part in cookie</title><link rel="alternate" type="text/html" href="/blogs/montaque/archive/2004/02/04/2460.aspx" /><id>/blogs/montaque/archive/2004/02/04/2460.aspx</id><published>2004-02-04T11:03:00Z</published><updated>2004-02-04T11:03:00Z</updated><content type="html">&lt;p&gt;    Public Sub SetCsdnCookie(ByVal c1 As System.Net.CookieContainer)&lt;br /&gt;        Dim s As String = " buildtime=2004%2D2%2D3+13%3A44%fsadfasd; buildnum=1; test=0; ASPSESSIONIDQASRTDQB=EKPHCECANFKHBJLMNJEDOJDP; ASPSESSIONIDQAQSSCQA=IALDDLCAJNGDPHDLFHOCGPLD; ASPSESSIONIDSCQRSDQA=JBCKJPDADKFLJDLAPFHLBIND; daynum=7; ABCDEF=RyYqs5wAA1v7wvlXC%25252fgOhElDWk%25252fVqNFDM3t306oQtpV5vj76WrVjh7ZInURppl6i; QWERTOP=1682; userid=78486"&lt;br /&gt;        'Dim s As String = "UserName=Montaque ; IP=12.121.1.1"&lt;br /&gt;        s = s.Trim&lt;br /&gt;        Dim reg1 As New System.Text.RegularExpressions.Regex("(?&amp;lt;1&amp;gt;[^=]+)=(?&amp;lt;2&amp;gt;[^=]+);")&lt;br /&gt;        Dim mc As System.Text.RegularExpressions.MatchCollection = reg1.Matches(s)&lt;/p&gt;
&lt;p&gt;        Dim cc As New System.Net.CookieCollection&lt;br /&gt;        Dim cookie1 As System.Net.Cookie&lt;br /&gt;        For Each m As System.Text.RegularExpressions.Match In mc&lt;br /&gt;            cookie1 = New System.Net.Cookie(m.Groups(1).Value, m.Groups(2).Value)&lt;br /&gt;            cookie1.Domain = sUrl&lt;br /&gt;            cc.Add(cookie1)&lt;br /&gt;        Next&lt;br /&gt;        Console.ReadLine()&lt;br /&gt;        c1.Add(cc)&lt;br /&gt;    End Sub&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;//How to Resolve.&lt;/p&gt;
&lt;p&gt;name and value of a cookie can not begin with spaces,so add a trim to the name and value&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=2460" width="1" height="1"&gt;</content><author><name>Montaque</name><uri>http://msmvps.com/members/Montaque/default.aspx</uri></author><category term="Tech Notes" scheme="http://msmvps.com/blogs/montaque/archive/tags/Tech+Notes/default.aspx" /></entry></feed>