<?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>Απ: NetworkInformation σε C#</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/49070.aspx</link><pubDate>Tue, 10 Mar 2009 20:20:10 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:49070</guid><dc:creator>psid</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/49070.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=49070</wfw:commentRss><description>Παναγιώτη τρέχω τον κώδικα σου, ενώ λειτουργεί για τον τοπικό υπολογιστή 
σε απομακρυσμένο πετάει την πιο κάτω εξαίρεση:
(υπάρχει λύση?)




Εξαίρεση που δεν αντιμετωπίστηκε: System.Runtime.InteropServices.COMException (0
x800706BA): Ο διακομιστής RPC δεν είναι διαθέσιμος. (Εξαίρεση από HRESULT: 0x800
706BA)
   σε System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 e
rrorCode, IntPtr errorInfo)
   σε System.Management.ManagementScope.InitializeGuts(Object o)
   σε System.Management.ManagementScope.Initialize()
   σε System.Management.ManagementObject.Initialize(Boolean getObject)
   σε System.Management.ManagementClass.GetInstances(EnumerationOptions options)

   σε System.Management.ManagementClass.GetInstances()
   σε WMIExample.Program.Main(String[] args) στο C:\Users\Πέτρος\Documents\Visua
l Studio 2008\Projects\WMI\WMIExample\WMIExample\Program.cs:γραμμή 17
Πιέστε ένα πλήκτρο για συνέχεια. . .</description></item><item><title>Απ: NetworkInformation σε C#</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/49046.aspx</link><pubDate>Mon, 09 Mar 2009 23:36:59 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:49046</guid><dc:creator>Παναγιώτης Καναβός</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/49046.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=49046</wfw:commentRss><description>&lt;P&gt;Δεν υπάρχει λόγος να φτιάξει&amp;nbsp;κανείς&amp;nbsp;δική του εφαρμογή, καθώς τα Windows ήδη παρέχουν αυτή τη δυνατότητα μέσω του&lt;A href="http://msdn.microsoft.com/en-us/library/aa394582.aspx"&gt; WMI&lt;/A&gt; και του System.Management namespace. Το WMI υπάρχει από καταβολής Windows 2000 και επιτρέπει σε administrators να διαβάζουν οποιαδήποτε σχεδόν τιμή θέλουν από τα διάφορα μηχανήματα του δικτύου τους με απλά σχετικά scripts. Στο MSDN περιγράφεται πως να κάνεις &lt;A href="http://msdn.microsoft.com/en-us/library/aa394595(VS.85).aspx"&gt;κάποια απλά tasks &lt;/A&gt;ενώ υπάρχει και το &lt;A href="http://www.microsoft.com/technet/scriptcenter/default.mspx"&gt;Technet ScriptCenter &lt;/A&gt;με έτοιμα scripts για πολλές διαφορετικές εργασίες. To WMI ξεκίνησε ως COM τεχνολογία, αλλά &lt;A href="http://msdn.microsoft.com/en-us/library/ms257340(VS.80).aspx"&gt;μπορεί να κληθεί και από το .NET&lt;/A&gt; μέσω του System.Management namespace.&lt;/P&gt;
&lt;P&gt;Το πρόβλημα λοιπόν γίνεται, πως θα διαβάσω το MAC address των καρτών ενός υπολογιστή μέσω WMI? &lt;/P&gt;
&lt;P&gt;Η αναζήτηση πληροφοριών από το WMI μοιάζει κάπως με την ανάγνωση δεδομένων από ένα πίνακα, με τη διαφορά ότι αντί για πίνακα υπάρχουν κλάσεις. Μπορεί κανείς να χρησιμοποιήσει ακόμα και SQL για να διαβάσει τις τιμές που θέλει. Η κλάση που επιστρέφει το MAC address είναι η Win32_NetworkAdapterConfiguration και περιέχει μία εγγραφή για κάθε κάρτα δικτύου. Το MAC address περιέχεται στο πεδίο MacAddress. Για να πάρω το MAC Address του υπολογιστή μου μπορώ να γράψω το εξής:&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ManagementClass adapters= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;new&lt;/SPAN&gt; System.Management.ManagementClass(&lt;SPAN style="BACKGROUND-COLOR:#e4e4e4;FONT-FAMILY:Courier New;COLOR:#666666;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;"Win32_NetworkAdapterConfiguration"&lt;/SPAN&gt;);&lt;BR&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;foreach&lt;/SPAN&gt; (ManagementObject adapter &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;in&lt;/SPAN&gt; adapters.GetInstances())&lt;BR&gt;{&lt;BR&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;string&lt;/SPAN&gt; address &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:red;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;=&lt;/SPAN&gt; (&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;string&lt;/SPAN&gt;)adapter[&lt;SPAN style="BACKGROUND-COLOR:#e4e4e4;FONT-FAMILY:Courier New;COLOR:#666666;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;"MacAddress"&lt;/SPAN&gt;];&lt;BR&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;if&lt;/SPAN&gt; (!String.IsNullOrEmpty(address))&lt;BR&gt;Console.WriteLine(&lt;SPAN style="BACKGROUND-COLOR:#e4e4e4;FONT-FAMILY:Courier New;COLOR:#666666;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;"MAC: {0}"&lt;/SPAN&gt;, address);&lt;BR&gt;adapter.Dispose();&lt;BR&gt;}&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;Το dispose χρειάζεται επειδή τα ManagemntObject είναι COM αντικείμενα και δεν έχουν garbage collection.&lt;/P&gt;
&lt;P&gt;Για να διαβάσω τα MAC addresses ενός άλλου υπολογιστή, αντί για το όνομα της κλάσης θα προσθέσω και το όνομα του υπολογιστή με τη μορφή :&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:black;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;ManagementClass adapters= &lt;SPAN style="BACKGROUND-COLOR:transparent;FONT-FAMILY:Courier New;COLOR:blue;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;new&lt;/SPAN&gt; System.Management.ManagementClass(&lt;SPAN style="BACKGROUND-COLOR:#e4e4e4;FONT-FAMILY:Courier New;COLOR:#666666;FONT-SIZE:11px;FONT-WEIGHT:normal;"&gt;@"\\SomeComputer\root\cimv2:Win32_NetworkAdapterConfiguration"&lt;/SPAN&gt;);&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;όπου αντί για SomeComputer θα βάλω το όνομα του υπολογιστή που θέλω να συνδεθώ. &lt;/P&gt;
&lt;P&gt;Όσον αφορά τη GetHostByName και το IPHostEntry, θα δώσει μόνο το IP address, όχι το MAC Address που ζητάει ο psid.&lt;/P&gt;</description></item><item><title>Απ: NetworkInformation σε C#</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/49031.aspx</link><pubDate>Mon, 09 Mar 2009 17:33:46 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:49031</guid><dc:creator>psid</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/49031.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=49031</wfw:commentRss><description>Ευχαριστώ για την απάντηση. Πράγματι μπορώ να χρησιμοποιήσω την κλάση Dns του System.NET, παρόλα αυτά 
στην υλοποίηση μου τελικά βάζω μια μικρή client εφαρμογή στον απομακρυσμένο υπολογιστή και παίρνω με Socket
τις πληροφορίες που θέλω.</description></item><item><title>Απ: NetworkInformation σε C#</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/49023.aspx</link><pubDate>Mon, 09 Mar 2009 06:28:43 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:49023</guid><dc:creator>ikaragkiozoglou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/49023.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=49023</wfw:commentRss><description>&lt;FONT color=#f0dfaf size=2&gt;&lt;FONT color=#f0dfaf size=2&gt;
&lt;P&gt;&lt;FONT color=#000000&gt;Μπορείς να κάνεις resolve πληροφορίες για εναν υπολογιστή αν ξέρεις το computer name του ή κάποια ip του. Με την βοήθεια του System.Net. Έχει το Dns.GetHostByName("Computer Name") και το Dns.GetHostByAddress("xxx.xxx.xxx.xxx"). Αυτές οι 2 μέθοδοι είναι τύπου IPHostEntry όπου μπορείς να πάρεις πληροφορίες για τα IP του τα ονόματα dns που έχει και άλλα.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.net.dns.aspx"&gt;http://msdn.microsoft.com/en-us/library/system.net.dns.aspx&lt;/A&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#d2d200 size=2&gt;&lt;FONT color=#d2d200 size=2&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;</description></item><item><title>NetworkInformation σε C#</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/48956.aspx</link><pubDate>Fri, 06 Mar 2009 22:15:01 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:48956</guid><dc:creator>psid</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/48956.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=14&amp;PostID=48956</wfw:commentRss><description>Ο παρακάτω κώδικας επιστρέφει την Φυσική διεύθυνση της πρώτης διασύνδεσης τοπικού δικτύου του τοπικού υπολογιστή:


 NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces();
                        label1.Text = nics[0].GetPhysicalAddress().ToString();

τώρα, υπάρχει τρόπος σε C# να πάρω την φυσική διεύθυνση ή και άλλες πληροφορίες απο έναν απομακρυσμένο υπολογιστή
στο ίδιο τοπικό δίκτυο?


Any help much appreciated.</description></item></channel></rss>