<?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>WinForms</title><link>https://www.dotnetzone.gr:443/cs/forums/12/ShowForum.aspx</link><description>Θέματα για rich client / windows εφαρμογές, σε οποιαδήποτε γλώσσα (VB.NET, C#, managed C++, κ.α.)</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14690.aspx</link><pubDate>Fri, 14 Jul 2006 02:07:37 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14690</guid><dc:creator>teDeV</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14690.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14690</wfw:commentRss><description>λοιπόν αυτό που θέλω να κάνω είναι ι εναλλακτική 1 του mns.&lt;br /&gt;
&lt;br /&gt;
και το αποτελεσμα θέλω να είναι και αυτό που λέει ο zax1. αλλα δεν ξέρω πως :(&lt;br /&gt;
&lt;br /&gt;
ένα παράδειγμα θα βοηθούσε...</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14616.aspx</link><pubDate>Wed, 12 Jul 2006 03:49:50 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14616</guid><dc:creator>zax1</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14616.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14616</wfw:commentRss><description>Μια καλή ιδέα είναι, να παίξεις με socket και απο το server κομμάτι να στέλνεις ένα μήνυμα στο client, μια λέξη για παράδειγμα οποιαδήποτε και όταν ο client λάβει αυτή τη "λέξη" να εκτελείται κάτι σαν το παρακάτω&lt;br&gt;
&lt;br&gt;
If Received = "TerminateClient" Then&lt;br&gt;
&lt;br&gt;
    me.close&lt;br&gt;
&lt;br&gt;
end if&lt;br&gt;
&lt;br&gt;
Χωρίς WMI και χωρίς δικαιώματα administrator.&lt;br&gt;
&lt;br&gt;
Αυτό έχω κάνει κι εγώ για να κάνω restart και terminate το client κομμάτι μου.&lt;br&gt;
&lt;br&gt;
Ελπίζω να βοήθησα κάπως &lt;img src="/cs/emoticons/emotion-1.gif" alt="Smile" /&gt;&lt;br&gt;</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14615.aspx</link><pubDate>Wed, 12 Jul 2006 02:36:12 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14615</guid><dc:creator>KelMan</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14615.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14615</wfw:commentRss><description>Σίγουρα είναι το παν! &lt;img src="/cs/emoticons/emotion-1.gif" alt="Smile" /&gt; &lt;br /&gt;
&lt;br /&gt;
Ουργκ! Εξ΄αρχής είχε κολλήσει στο μυαλό μου το σενάριο ότι δεν είναι δική σου η εφαρμογή που προσπαθείς να κλείσεις...</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14608.aspx</link><pubDate>Tue, 11 Jul 2006 23:12:00 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14608</guid><dc:creator>Νατάσα Μανουσοπούλου</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14608.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14608</wfw:commentRss><description>Είτε του στέλνεις μήνυμα στο κανάλι που ακούει και του ζητάς ευγενικά
να κλείσει, είτε ζητάς από το server να ασκήσει διευθυντικό δικαίωμα
και να του ζητήσει εκείνος να κλείσει στο επόμενο heartbeat. Όπως και
να έχει η ευγένεια είναι το παν &lt;img src="/cs/emoticons/emotion-1.gif" alt="Smile" /&gt;&lt;br&gt;
&lt;br&gt;</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14603.aspx</link><pubDate>Tue, 11 Jul 2006 21:39:00 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14603</guid><dc:creator>KelMan</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14603.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14603</wfw:commentRss><description>Πολύ σωστά, ωστόσο χωρίς WMI πως μπορείς να κάνεις αυτό που λέει ο teDeV, να κλείνει remotely το process της εφαρμογής για κάποιο επιλεγμένο client;</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14602.aspx</link><pubDate>Tue, 11 Jul 2006 21:14:26 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14602</guid><dc:creator>Νατάσα Μανουσοπούλου</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14602.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14602</wfw:commentRss><description>Έχω την υποψία ότι αυτό που θέλει να κάνει ο OP είναι έλεγχος
ταυτόχρονων χρηστών. Για κάτι τέτοιο (αλλά και για άλλες εφαρμογές) το
WMI δεν είναι κατάλληλο, όχι τόσο γιατί είναι πολύπλοκο και έχει κακό
documentation &lt;img src="/cs/emoticons/emotion-5.gif" alt="Wink" /&gt; όσο γιατί (ιδιαίτερα στο δίκτυο) απαιτεί δικαιώματα
administrator, τα οποία δε θα τα έχεις και δεν μπορείς να τα απαιτήσεις.&lt;br&gt;
&lt;br&gt;
Για το πρόβλημα των ταυτόχρονων χρηστών, υπάρχουν δύο δρόμοι που μπορείς να ακολουθήσεις στο μοντέλο που ζητάς:&lt;br&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;1η εναλλακτική: &lt;/b&gt;Κάθε instance της εφαρμογής να ακούει σε
ένα socket/named pipe/remoting channel/whatever στο οποίο να απαντά ότι
είναι ζωντανό. Όταν η εφαρμογή σηκώνεται, κάνει broadcast αναζητώντας
και μετρώντας αυτούς που θα απαντήσουν. Αυτή η λύση έχει διάφορα
μειονεκτήματα:&lt;/li&gt;
  &lt;ul&gt;
    &lt;li&gt;Σε ορισμένες περιπτώσεις (και ειδικά αν δεν έχεις ΒΔ) μπορεί να
παρακαμφθεί βγάζοντας τον υπολογιστή από το δίκτυο την ώρα που η
εφαρμογή αρχικοποιείται. Για να το καλύψεις αυτό πρέπει να στέλνεις ένα
όμοιο broadcast ελέγχου τακτικά -- αλλά όχι και πολύ συχνά.&lt;/li&gt;
    &lt;li&gt;Εξαιρουμένου του socket, πρέπει να βρεις εσύ τους υπολογιστές
του τοπικού σου δικτύου για να κάνεις το enumeration και να στείλεις σε
όλους μήνυμα.&lt;/li&gt;
    &lt;li&gt;Σε δίκτυα που είναι χωρισμένα σε τμήματα, με ξεχωριστό IP range
το καθένα, έχεις πολλές πιθανότητες να μην επικοινωνήσεις με όλους.&lt;/li&gt;
  &lt;/ul&gt;
  &lt;li&gt;&lt;b&gt;2η εναλλακτική: &lt;/b&gt;Υπάρχει ένα κεντρικό process σε έναν
υπολογιστή, το οποίο κρατά λογαριασμό για το ποιοι clients είναι
ζωντανοί. Κάθε client στέλνει (συχνά) ένα heartbeat signal στον server,
ώστε να δηλώσει την ενεργή παρουσία του, και του ζητά την άδεια να
ξεκινήσει ανάλογα με το πλήθος των υπόλοιπων ενεργών εφαρμογών. Στην
περίπτωση αυτή:&lt;/li&gt;
  &lt;ul&gt;
    &lt;li&gt;Έχεις μια λύση που μπορεί να χρησιμοποιηθεί σε πολλές εφαρμογές (καλό)&lt;/li&gt;
    &lt;li&gt;Αν ο server πέσει δεν μπορεί κανένας να δουλέψει (κακό)&lt;/li&gt;
  &lt;/ul&gt;
&lt;/ul&gt;
Και στις δύο περιπτώσεις πάντως, το σύστημα παρακάμπτεται με λίγη ή πολλή προσπάθεια.&lt;br&gt;
HTH.&lt;br&gt;
&lt;br&gt;</description></item><item><title>Απ: Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14322.aspx</link><pubDate>Fri, 30 Jun 2006 16:33:21 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14322</guid><dc:creator>KelMan</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14322.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14322</wfw:commentRss><description>Μέσω WMI μπορείς να ελέγχεις τα processes που τρέχουν τόσο στο τοπικό μηχάνημα όσο και στα remote μεχανήματα. Ψάξε περί WMI και αν κολλήσεις, εδώ είμαστε...</description></item><item><title>Έλενχος Client!</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/14299.aspx</link><pubDate>Thu, 29 Jun 2006 18:59:53 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:14299</guid><dc:creator>teDeV</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/14299.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=12&amp;PostID=14299</wfw:commentRss><description>&lt;P&gt;Καλησπέρα, φτιάχνω μια εφαρμογή και χρειάζομαι να ξέρω σε ένα δίκτυο κάποια πράματα ...&lt;/P&gt;
&lt;P&gt;1) Πόσα προγράμματα της εφαρμογής μου τρέχουν συνολικά μέσα στο δίκτυο&lt;/P&gt;
&lt;P&gt;2) Ποιά είναι η ιπ τους και το όνομα του υπολογιστή.&lt;/P&gt;
&lt;P&gt;μετά από αυτό θέλω να μπορώ να στέλνω μία παράμετρο σε ένα συγκεκριμένο τερματικό και να τερματίζει την λειτουργία της εφαρμογής.&lt;/P&gt;
&lt;P&gt;A! δεν θέλω λύση του τύπου να το αποθηκεύω σε μία βάση και να το παρακολουθώ απο εκεί, καθώς θέλω real time απάντηση απο το σύστημα, και όχι σκουπίδια που μπορεί να έχουν γίνει απο διάφορους λόγους.&lt;/P&gt;
&lt;P&gt;Φαντάζομαι ότι θα μπορούσε να υπάρχει ένας τρόπος να ψάχνει όλο το δίκτυο , όλα τα μηχανήματα μέχρι να πάρει μία απάντηση απο το κάθε Η/Υ αν τρέχει την εφαρμογή ή όχι&lt;/P&gt;
&lt;P&gt;τίποτα τρελό ελπίζω.... τα φώτα σας ! :(&lt;/P&gt;</description></item></channel></rss>