<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>.NET Framework</title><link>https://www.dotnetzone.gr:443/cs/forums/14/ShowForum.aspx</link><description>Θέματα για threading, remoting, reflection, exception handling, security, regex κλπ.</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46780.aspx</link><pubDate>Mon, 08 Dec 2008 23:31:35 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46780</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46780.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46780</wfw:commentRss><description>Το θεμα επιτελους λυθηκε.&lt;br&gt;&lt;br&gt;Tα signatures για ανοιγμα, διαβασμα και γραψιμο:&lt;br&gt;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; static extern IntPtr CreateFile(&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; string filename,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [MarshalAs(UnmanagedType.U4)]FileAccess fileaccess,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [MarshalAs(UnmanagedType.U4)]FileShare fileshare,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr securityattributes,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [MarshalAs(UnmanagedType.U4)]FileMode creationdisposition,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; uint flags,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr template&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; );&lt;br&gt;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; static extern bool ReadFile(&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr hFile,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] lpBuffer,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int nNumberOfBytesToRead,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; out int lpNumberOfBytesRead,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr lpOverlapped&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; );&lt;br&gt;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; static extern bool WriteFile(&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr hFile, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] lpBuffer, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int nNumberOfBytesToWrite,&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; out int lpNumberOfBytesWritten, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr lpOverlapped&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; );&lt;br&gt;&lt;br&gt;Ο κωδικας για το ανοιγμα, διαβασμα και γραψιμο:&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr TunHandle = CreateFile(&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; "file", &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; FileAccess.ReadWrite, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; FileShare.ReadWrite, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr.Zero, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; FileMode.Open,&amp;#160; &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (uint)&lt;b&gt;FileAttributes.Normal&lt;/b&gt;, &lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; IntPtr.Zero);&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int BytesRead = 0;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] BufBytes = new byte[64 * 1024];&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (ReadFile(TunHandle, BufBytes, BufBytes.Length, out BytesRead, IntPtr.Zero))&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine("Read: " + BytesRead);&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] OutBytes = new byte[BytesRead];&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Array.Copy(BufBytes, 0, OutBytes, 0, BytesRead);&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return OutBytes;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; else&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return null;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; byte[] packet = new byte[data.Length];&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Array.Copy(data, 0, packet, 0, data.Length);&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; int BytesWritten = 0;&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; if (WriteFile(TunHandle, packet, packet.Length, out BytesWritten, IntPtr.Zero))&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine("Write: " + BytesWritten);&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; else&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine("could not write");&lt;br&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br&gt;&lt;br&gt;To λαθος ηταν στην CreateFile στην οποια περνουσα παραμετρο&amp;#160; FILE_ATTRIBUTE_SYSTEM|FILE_FLAG_OVERLAPPED ενω διαβαζα ως non-overlapped. Οποτε εβαλα για παραμετρο FILE_ATTRIBUTE_NORMAL και ολα δουλεψαν ρολοι.&lt;br&gt;Αυτη την πληροφορια τη βρηκα χαρη σε σενα Markos στο link που με εδωσες πριν. &lt;br&gt;Να' σαι καλα.&lt;br&gt;Οποτε αυτη ειναι η λυση και στο TOPIC.&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46777.aspx</link><pubDate>Mon, 08 Dec 2008 09:49:57 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46777</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46777.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46777</wfw:commentRss><description>Τι να σου πω... Μέχρι τώρα κοίταζα στο site του openvpn μήπως βρω κάτι. Ίσως θα πρέπει να κάνεις ένα post στο οικείο&amp;nbsp;&lt;A href="http://ovpn.sq7ro.net/ovpnforum/viewforum.php?f=11"&gt;forum&lt;/A&gt; του openvpn ή/και να τους στείλεις κάποιο email. Εκτός αν αύριο με πιο καθαρό μυαλό βρεθεί η λύση.</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46776.aspx</link><pubDate>Mon, 08 Dec 2008 09:15:34 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46776</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46776.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46776</wfw:commentRss><description>Ε, προσπαθω να διαβασω bytes.&lt;br&gt;Με την FileStream ολα δουλευαν ρολοι. Απλα ο καθηγητης θελει για PDA και σε PDA αλλαζουν τα πραματα &lt;img src="http://www.dotnetzone.gr/cs/emoticons/emotion-6.gif" alt="Sad" /&gt;&lt;br&gt;&lt;br&gt;Εχω βρει απο το source του openvpn οτι για ReadFile εχει αυτο:&lt;br&gt;&lt;br&gt;ReadFile(&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; tt-&amp;gt;hand,&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; BPTR (&amp;amp;tt-&amp;gt;reads.buf),&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; len,&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;amp;tt-&amp;gt;reads.size,&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;amp;tt-&amp;gt;reads.overlapped&lt;br&gt;);&lt;br&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46775.aspx</link><pubDate>Mon, 08 Dec 2008 08:54:46 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46775</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46775.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46775</wfw:commentRss><description>Τι να σου πω... Το ψάχνω μαζί σου. Σε άλλο thread είδα ότι αναφέρεσαι στον tun driver. Προφανώς εκεί παίζεις τώρα. Το documentation δε λέει κάτι για το πως κάνεις access;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46774.aspx</link><pubDate>Mon, 08 Dec 2008 08:49:24 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46774</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46774.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46774</wfw:commentRss><description>Εχει σημασια ποιο απο τα τεσσερα θα χρησιμοποιηθει ;&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46773.aspx</link><pubDate>Mon, 08 Dec 2008 08:45:52 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46773</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46773.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46773</wfw:commentRss><description>Η ReadFile() έχει τέσσερα signatures. Μήπως πρέπει να χρησιμοποιήσεις κάποιο άλλο;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46772.aspx</link><pubDate>Mon, 08 Dec 2008 08:36:51 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46772</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46772.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46772</wfw:commentRss><description>Στο ανεφερα το SafeFileHandle γιατι στο NETCF δεν υπαρχει τετοιο πραμα.&lt;br&gt;Πρεπει να σεταρεις το OpenNETCF για να εχεις και SafeFileHandle.&lt;br&gt;Αλλα δεν ειναι εδω το προβλημα.&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46771.aspx</link><pubDate>Mon, 08 Dec 2008 08:30:39 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46771</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46771.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46771</wfw:commentRss><description>Λοιπον, χρησιμοποιησα την ReadFile ως εξης:&lt;br&gt;&amp;nbsp;&lt;br&gt;
[DllImport("kernel32.dll")]
&lt;br&gt;static extern bool ReadFile(
        &lt;br&gt;IntPtr hFile, 
        &lt;br&gt;byte[] lpBuffer,
        &lt;br&gt;uint nNumberOfBytesToRead, 
        &lt;br&gt;out uint lpNumberOfBytesRead, 
        &lt;br&gt;IntPtr lpOverlapped
);
&lt;br&gt;
&lt;br&gt;και διαβασα ως εξης:&lt;br&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; uint BytesRead = 0;&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; byte[] BufBytes = new byte[64 * 1024];&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 (ReadFile(TunHandle, BufBytes, (uint)BufBytes.Length, out BytesRead, IntPtr.Zero))&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; byte[] OutBytes = new byte[BytesRead];&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; Array.Copy(BufBytes, OutBytes, (int)BytesRead);&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; Console.WriteLine("Read: "+BytesRead);&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; return OutBytes;&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; else&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; Console.WriteLine("Read: Nothing");&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; return null;&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;&lt;br&gt;Δυστυχως δε διαβαζει τπτ. Κανω κατι λαθος;&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46770.aspx</link><pubDate>Mon, 08 Dec 2008 08:25:10 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46770</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46770.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46770</wfw:commentRss><description>&lt;P&gt;Κάτσε τώρα γιατί κάπου μπερδεύτηκα.&amp;nbsp;Είναι και η ώρα περίεργη... &lt;A href="http://www.pinvoke.net/default.aspx/kernel32/CreateFile.html"&gt;Εδώ&lt;/A&gt; λέει ότι το signature της CreateFile είναι:&lt;/P&gt;
&lt;P&gt;[DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]&lt;BR&gt;public static extern &lt;STRONG&gt;IntPtr&lt;/STRONG&gt; CreateFile(&lt;BR&gt;&amp;nbsp;&amp;nbsp; string fileName,&lt;BR&gt;&amp;nbsp;&amp;nbsp; [MarshalAs(UnmanagedType.U4)] FileAccess fileAccess,&lt;BR&gt;&amp;nbsp;&amp;nbsp; [MarshalAs(UnmanagedType.U4)] FileShare fileShare,&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;IntPtr&lt;/STRONG&gt; securityAttributes,&lt;BR&gt;&amp;nbsp;&amp;nbsp; [MarshalAs(UnmanagedType.U4)] FileMode creationDisposition,&lt;BR&gt;&amp;nbsp;&amp;nbsp; int flags,&lt;BR&gt;&amp;nbsp;&amp;nbsp; IntPtr template);&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Απλά στο .NET 2.0 γίνεται (ίδια πηγή):&lt;/P&gt;
&lt;P&gt;[DllImport("Kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]&lt;BR&gt;&amp;nbsp;public&amp;nbsp;static extern &lt;STRONG&gt;SafeFileHandle&lt;/STRONG&gt; CreateFile(&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;string fileName,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[MarshalAs(UnmanagedType.U4)] FileAccess fileAccess,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[MarshalAs(UnmanagedType.U4)] FileShare fileShare,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;IntPtr&lt;/STRONG&gt; securityAttributes,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[MarshalAs(UnmanagedType.U4)] FileMode creationDisposition,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;[MarshalAs(UnmanagedType.U4)] FileAttributes flags,&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;IntPtr template);&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Όπως λέει και στο &lt;A href="http://www.pinvoke.net/default.aspx/kernel32/ReadFile.html"&gt;link&lt;/A&gt; της ReadFile:&lt;/P&gt;
&lt;H4&gt;Tips &amp;amp; Tricks:&lt;/H4&gt;
&lt;P&gt;NET 2.0 use &lt;A href="http://www.pinvoke.net/default.aspx/kernel32/SafeFileHandle.html"&gt;&lt;FONT color=#4169e1&gt;SafeFileHandle&lt;/FONT&gt;&lt;/A&gt; instead of &lt;A href="http://www.pinvoke.net/default.aspx/user32/IntPtr.html"&gt;&lt;FONT color=#4169e1&gt;IntPtr&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Ποιο ακριβώς είναι το πρόβλημα; Στο .NET 2.0 περνάς σαν παράμετρο το SafeFileHandle, εφόσον το ορίσεις στο signature της ReadFile, αντί του IntPtr. Αυτό καταλαβαίνω από την πηγή που σου&amp;nbsp;έδωσα. Αν&amp;nbsp;υπάρχει κάτι άλλο που δεν το αναφέρουν, τότε...&amp;nbsp;Δοκίμασέ το έτσι και&amp;nbsp;αν δε&amp;nbsp;δουλέψει τότε άλλαξέ το και δοκίμασε με IntPtr.&lt;/P&gt;
&lt;P&gt;Στο αρχικό σου post, η CreateFile επέστρεφε IntPtr και εκεί γινόταν όλο το μπλέξιμο. Το ωραίο είναι ότι ο constructor της FileStream είναι overloaded και &lt;A href="http://msdn.microsoft.com/en-us/library/system.io.filestream.filestream.aspx"&gt;δέχεται&lt;/A&gt; σα παράμετρο το SafeFileHandle object, αλλά όχι στο CF!&lt;/P&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46768.aspx</link><pubDate>Mon, 08 Dec 2008 07:14:20 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46768</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46768.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46768</wfw:commentRss><description>Απ'οτι βλεπω η ReadFile δεχεται μονο IntPtr.&lt;br&gt;Επιστρεφω SafeFileHandle στην CreateFile γιατι καπου διαβασα οτι ο IntPtr εχει ξεπεραστει.&lt;br&gt;Υπαρχει περιπτωση η ReadFile να δεχεται SafeFileHandle ;&lt;br&gt;Ακομα και ο compiler βγαζει warning οτι ο IntPtr ειναι ξεπερασμενος σε .NET 2&lt;br&gt;Το λεει και στην σελιδα που με εδωσες για την ReadFile:&lt;br&gt;"NET 2.0 use &lt;a href="http://www.pinvoke.net/default.aspx/kernel32/SafeFileHandle.html"&gt;SafeFileHandle&lt;/a&gt; instead of &lt;a href="http://www.pinvoke.net/default.aspx/user32/IntPtr.html"&gt;IntPtr&lt;/a&gt;"&lt;br&gt;&amp;nbsp;&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46765.aspx</link><pubDate>Mon, 08 Dec 2008 03:15:36 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46765</guid><dc:creator>Markos</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46765.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46765</wfw:commentRss><description>&lt;P&gt;Απ' ότι φαίνεται κι &lt;A href="http://www.brianpeek.com/forums/t/566.aspx?PageIndex=1"&gt;αυτοί&lt;/A&gt; έχουν το ίδιο πρόβλημα. Μάλλον θα πρέπει να εγκαταλείψεις την FileStream και να χρησιμοποιήσεις PInvole. Ορίστε τα signatures για &lt;A href="http://www.pinvoke.net/default.aspx/kernel32/CreateFile.html"&gt;CreateFile&lt;/A&gt; και &lt;A href="http://www.pinvoke.net/default.aspx/kernel32/ReadFile.html"&gt;ReadFile&lt;/A&gt;.&lt;/P&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46762.aspx</link><pubDate>Mon, 08 Dec 2008 01:07:15 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46762</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46762.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46762</wfw:commentRss><description>Φιλε μου στο .NETCF δεν εχει System.IO.Pipes &lt;img src="http://www.dotnetzone.gr/cs/emoticons/emotion-6.gif" alt="Sad" /&gt;&lt;br&gt;</description></item><item><title>Απ: Filestream σε NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46595.aspx</link><pubDate>Mon, 01 Dec 2008 09:27:56 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46595</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46595.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46595</wfw:commentRss><description>&lt;P&gt;Από ότι φαίνεται από το path που προσπαθείς να κάνεις access, αυτό που προσπαθείς να ανοίξεις είναι ένα pipe. Προσπάθησες να χρησιμοποιήσεις την αντίστοιχη κλάσεις που υπάρχουν&amp;nbsp;στο &lt;A target=_blank href="http://msdn.microsoft.com/en-us/library/system.io.pipes.aspx"&gt;System.IO.Pipes&lt;/A&gt;&amp;nbsp;του&amp;nbsp;.NET Framework;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;George J.&lt;BR&gt;&lt;/P&gt;</description></item><item><title>SafeFileHandle και IntPtr σε FileStream σε .NETCF</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46385.aspx</link><pubDate>Fri, 21 Nov 2008 01:40:54 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46385</guid><dc:creator>mixio</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46385.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=46385</wfw:commentRss><description>Απ' οτι φαινεται οι constructor της Filestream για NETCF δεν εχουν περιπτωση για να περνει ως παραμετρο ενα IntPtr.&lt;br&gt;&lt;br&gt;Θελω να ανοιξω για Read/Write ενα Tun interface και αυτο το κανω σωστα με τον παρακατω κωδικα. &lt;br&gt;&lt;br&gt;IntPtr ptr = CreateFile("\\\\.\\Global\\" + devGuid + ".tap", FileAccess.ReadWrite....................);&lt;br&gt;&lt;br&gt;Το προβλημα ειναι οτι ο παραπανω κωδικας επιστρεφει εναν IntPtr οπως βλεπετε.&lt;br&gt;Πως θα συνδεσω τωρα καποιο stream σε αυτον τον pointer;&lt;br&gt;&lt;br&gt;Αν ημουν σε NET κανονικη θα το εκανα καπως ετσι.&lt;br&gt;new FileStream(ptr, FileMode.Open);&lt;br&gt;&lt;br&gt;&lt;br&gt;</description></item></channel></rss>