Har gjort en klient till en server för länge sedan. Jag gjorde något liknande för några år sedan, en chattserver + klient till det. Tänkt att köra på ett lan, fungerade hyfsat bra. mmm. Hmm eftersom varje dator har ett fast IP nummer så kan jag göra ett script som lägger till rätt knapp. Nu hittade jag mitt gamla projekt... Tänk på att den är skriver för många år sedan och koden kan vara en aning simpel. Verkar vara hyfsat kommenterad i alla fall. Principen bygger på att skapa en winsock för varje klient som är ansluten till servern, och när någon klient skickar ett meddelande så skickar serven det vidare till de andra klienterna. Jo men det behövs ju inte för mig :) Då förstår jag inte riktigt var problemet ligger, om bara en klient ska vara uppkopplad mot servern samtidigt så borde du kunna använda en enda winsock helt enkelt. :) Ja det låter fullt möjligt. Låter ju inte som en överdrivet komplicerad funktion att skicka PÅ/AV till en klient så fort den ansluter och sedan koppla ifrån :) Du behöver inte flera Winsock instanser för att hantera multipla klienter, som jag redan tror har påpekats. Hantera klienten i ConnectionRequest-händelsen (förutsatt att du använder VB's Winsock komponent) och gör jobbet där, om du nu inte redan gör det. Annars får du gärna beskriva idén lite utförligare så kanske vi kan erbjuda mer hjälp.:) Tack men får inte ta för mycket hjälp för då har ni gjort den och inte jag :D Aha, nu förstår jag dig lite bättre. Så du vill alltså kontrollera stängningen av IE hos klienterna med en AV/PÅ-signal som skickas av personen som styr servern (med hjälp av kontrollpanelen)? Det handlar ju främst bara om att skicka ett värde (0 eller 1) som sedan klienten omvandlar till en Boolean och sätter timerns Enabled-egenskap med. Själv skulle jag rekommendera att du spenderar lite tid på att lära dig Winsock API i stället för VB's Winsock-komponent som är ganska begränsad i jämförelse med API-funktionerna. I servern bör du lagra alla klienter som har kontakt med servern i en array av sockets (eller Type's om du vill lagra ytterliggare information), så du sedan enkelt kan lokalisera vilken klient som skall mottaga AV/PÅ-signalen utan att fumla. Japp Vad menar du med att "sätta ihop det"? Har du fått det att fungera för en klient, menar du? Jag har gjort en VB projekt som stänger ner IE Det känns som UDP är mer lämpligt. De har inte brandväggen aktiverad så det behöver man inte tänka på Är det bara inte för dina elevera att stänga av programmet? Det finns bara IE att väljaMulti winsock
Var inte alls så svårt.
Nu har jag föröskt med att göra ett program från 8 klienter till en server.
Har tänkt följande.
Klienterna skickas 1 gång i minuten en anrop till servern tills den svara och de ansluts (Använder då Timer och att jag gör deta är för att ibland behövs inte servern eller att den startar senare)
När klienterna får kontakt med servern så ska den skicka sitt IP nummer.
Det IP nummer som servern får ska sedan kopplas till rätt knapp
När personen som sitter vid servern klickar på en knapp så ska den skickas ett kommando till den klient som är kopplad till den knappen.
Den ska skicka typ "PÅ" och "AV"
Har fixat så klienten blir ansluten men direkt efter får den ett fel och både klienten och servern blir galen och säger bara att det är något fel.
Någon som har ett basic multi winsock som man kan få och antingen utgå från den (om jag gillar kodningen) eller läsa av och försöka få in det i mitt projekt.
Har ni några frågor om något så är det bara att skriva för jag hade hoppas att jag har får ordning på det snart.Sv: Multi winsock
Svårt att säga vad du gör för fel utan att se på koden.
Kan försöka leta upp mitt gamla program, om du har användning för det.Sv:Multi winsock
Har tyvärr inte koden här, och kommer inte åt den fören på måndag.
Får göra om den i helgen annars hemmaSv: Multi winsock
Men att få flera klienter till en server och den servern skicka ut kommando har jag inte löst.Sv:Multi winsock
Screenshot: http://supermupp.se/chat/screenshot.jpg
Server+klient: http://supermupp.se/chat/chat.zipSv:Multi winsock
Sv: Multi winsock
Klienten ska endast skickas till servern när den ansluter (Om det går även när datorn stängs av är super)
Annars ska servern bara skicka två kommando till den klient den vill skicka till "På" "Av"Sv:Multi winsock
Sv:Multi winsock
Sv: Multi winsock
Sv:Multi winsock
Är så här att jag har ett script i en timer som gör att en gång i minuten stänga ner IE, Den vill jag styra genom att sätta timer enable eller disable via en kontroll
Datorerna är 8 st till antal med fasta IP nummer så det går lätt att se vilken som är vilken.
Jag har en kontrollpanel med 8 st knappar som man klickar på för att stänga på eller av avstängingen för IE på klienterna.
programmet ska startas när windows startar och ska sen läggas i en systray (tror det är det bästa) så man kan se om det är aktiverad eller ej
Jag har gjort färdig de olika men har svårt att sätta ihop det så det blir bra :DSv: Multi winsock
Angående att den skall starta när Windows bootas; lagra ett värde som pekar på din programfil i registernyckeln HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run, eller ersätt HKEY_CURRENT_USER med HKEY_LOCAL_MACHINE om du vill att programmet skall startas oberoende vilken användare som loggar in.
Angående systray; du får nog implementera lite subclassing och själv hantera WM-meddelandet så som WM_SYSCOMMAND (wParam är då SC_MINIMIZE) för att bli varskodd när fönstret minimeras (om detta inte känns nödvändigt kan du skippa det), och för att lägga till samt ta bort programmet från systray använder du dig av Shell_NotifyIcon. Kolla MSDN för mer detaljer.;)Sv:Multi winsock
har som sagt fått det separat att fungerar, det gäller att sätta ihop det
Att skicka värden med winsock verkar inte var några problem, problemet är att sätta ihop allt.Sv: Multi winsock
Sv:Multi winsock
En server med knappar
En klient som läser en INI fil
Nu måste jag bara få in anslutningen och bygga ihop allt
Hittade ett basic multi chatt som jag kanske kanske kan använda.Sv: Multi winsock
På dina klienter:
Lyssna på en fast UDP port (se till att den är öppen i windows brandvägg).
På din kontroll applikation:
Behövs bara en socket vilket du sätter Remote Host och Port.
Skicka ditt kommando.Sv:Multi winsock
Klienterna ska igentligen bara skicka en gång när den får en anslutning så servern vet att nu har den klienten anslutit sig. Sedan ska bara servern skicka till klienterna.
Tror inte det går att få den läsa av om datorn stängs av eller loggar ut.
Ska ha det på jobbet (På min skola) så man kan bestämma om eleverna får surfa eller ej.Sv: Multi winsock
Borde det var bättre att lägga det som en service. Vilket de inte kommer åt.
Om du vill lösa det med en klient på varje dator som bara stänger ned internet explorer(Får eleverna använda firefox eller opera).
Den enklaste lösningen och mer ändamånenligt är väl att ha en gemensam brandvägg, dns eller nat som trafiken går på och man loggade in på och där du kunde strypa alla trafik. Så som Webb, MSN, Torrent, osv. Kan du strypa trafiken för en användare.Sv:Multi winsock
Jag kan ställa in vad som ska stängas
Man talar ju inte om hur det fungerar.
Eftersom det inte finns något sådant program på marknaden som är gratis så får man bygga ett helt enkelt :D