Gjakmarrja Skrevet 30. september 2006 Del Skrevet 30. september 2006 (endret) Hei! Vel jeg kunne ha laget dette i vb 6.0 men vil bruke C++. <3 Må starte en gang med C++, ikke bare ty til VB med en gang det er noe jeg ikke får til. Vel vi har nettverksdelen... Poenget med serveren er vel egentlig bare å "videresende" alle meldingene fordi den er den enste som har statisk IP. Er det API jeg jobber direkte mot her da? TCP? Også selvfølgelig GUI, dette må være litt "tøft", gjør GTK jobben eller fins det mer grafiske alternativer? Og til sist, hvordan er det med ø,æ og å når det kommer til stringbehandling? Jeg har ingen form for erfaring bare så det er nevnt. Men det har vel dere allerede forstått. Gjerne linker til ferdig kode/proskjekter som har tilsvarende funksjonalitet. Tusen Tusen Takk for hjelpen. Etter et bitte lite søk @ google innser jeg nå hvor latterlig lite behov det er for denne posten. Endret 30. september 2006 av chills Lenke til kommentar
Mr.Garibaldi Skrevet 30. september 2006 Del Skrevet 30. september 2006 Selv om det virker som om du har funnet det meste av det du trengte, vil jeg bare anbefale denne guiden til nettverksprogrammering. Den dekker det meste, og har faktisk en chat server som eksempel (klienten er opp til deg). Lykke til! Lenke til kommentar
Gjakmarrja Skrevet 30. september 2006 Forfatter Del Skrevet 30. september 2006 Takk takk... Skal se på den. C++ er bare så "stort", er vist omtrent 1000 måter å gjøre en og samme ting på. Lenke til kommentar
lnostdal Skrevet 30. september 2006 Del Skrevet 30. september 2006 (endret) ...Også selvfølgelig GUI, dette må være litt "tøft", gjør GTK jobben eller fins det mer grafiske alternativer? ... Og til sist, hvordan er det med ø,æ og å når det kommer til stringbehandling? ... 6972732[/snapback] GTK+ passer her ja. Uhm, vet ikke hva du mener med "grafisk" - men om du er ute etter å tegne ting så er cairo - som er en del av GTK+, veldig godt ( http://cairographics.org/examples ) og enkelt å komme i gang med. Norske tegn er ikke noe problem i GTK+. Flere av de tingene du er ute etter (Unicode-støtte, sockets, tråder) finnes i GTK+-libbet GLib. Bruker du disse blir programmet ditt portabelt. Endret 30. september 2006 av lnostdal Lenke til kommentar
Gjakmarrja Skrevet 1. oktober 2006 Forfatter Del Skrevet 1. oktober 2006 Takk Takk... Ikke dumt. Den ene klienten er egnetlig tiltenkt en linuxbox og den andre til en windowsmaskin. Skal se på GTK, @google med en gang. Eneste jeg lurer litt på er om man må skrive alt for GUI i kode, eller om det finnes en "designer" som skriver den koden for meg? Finner vel det kanskje ut nå selv... Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) Takk Takk... Ikke dumt. Den ene klienten er egnetlig tiltenkt en linuxbox og den andre til en windowsmaskin. Skal se på GTK, @google med en gang. Eneste jeg lurer litt på er om man må skrive alt for GUI i kode, eller om det finnes en "designer" som skriver den koden for meg? Finner vel det kanskje ut nå selv... 6975242[/snapback] ..man har en "designer" kalt Glade ja, men må bare understreke en ting her det er _ikke_ noe lurt å bruke Glade til å generere C/C++-kode.. generelt sett er det ikke noe lurt å bruke _noen som helst_ "designer" til å generere kode; det man i stedet gjør er å representere GUIet v.h.a. data .. Glade bruker XML til dette http://glade.gnome.org/ http://developer.gnome.org/doc/API/libglade/libglade.html generelt sett er det ofte lurere å bruke en "datasentrisk" løsning fremfor å hardkode slike ting i kode lykke til - rop om du står fast ... Endret 1. oktober 2006 av lnostdal Lenke til kommentar
Gjakmarrja Skrevet 1. oktober 2006 Forfatter Del Skrevet 1. oktober 2006 GTK vil ikke gjøre jobben sin . Jeg prøver å compile en tutorial på GTK sine sider, den hello world. Men jeg klarer ikke å include gtk.h selv om jeg har lastet det ned å lagt inn i "additional include diretories". Jeg fatter ikke hva jeg gjør gale, gtk.h ligger jo i den mappen? Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) GTK vil ikke gjøre jobben sin . Jeg prøver å compile en tutorial på GTK sine sider, den hello world. Men jeg klarer ikke å include gtk.h selv om jeg har lastet det ned å lagt inn i "additional include diretories". Jeg fatter ikke hva jeg gjør gale, gtk.h ligger jo i den mappen? 6978318[/snapback] hva er "additional include directories"? hvilket OS? hvilken kompiler - åssen oppsett? under ubuntu er det pakkene `build-essential' (for GCC og slikt) og `libgtk2.0-dev' du er ute etter edit: altså sudo aptitude install build-essential libgtk2.0-dev tar du med `libgtk2.0-doc' så havner API-dokumentasjonen i file:///usr/share/doc/libgtk2.0-doc/gtk/index.html og du kan browse den lokalt via den linken i browseren din etter du har gjort dette kompilerer/linker du som forklart i tutorialen: gcc -Wall -g helloworld.c -o helloworld `pkg-config --cflags gtk+-2.0` `pkg-config --libs gtk+-2.0` Endret 1. oktober 2006 av lnostdal Lenke til kommentar
Gjakmarrja Skrevet 1. oktober 2006 Forfatter Del Skrevet 1. oktober 2006 Windows XP Pro... VS.NET 2005 Jeg lastet bare ned en "pakkefil", sånn linux utgave pakke. Pakket den ut, og lå den mappen hvor jeg fant gtk.h inn i additional include directories. Ubuntu 6.06 er skolepcen, den blir nok ikke brukt til utvikling. Lenke til kommentar
................... Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) ... Endret 10. juli 2010 av ................... Lenke til kommentar
Gjakmarrja Skrevet 1. oktober 2006 Forfatter Del Skrevet 1. oktober 2006 Hvorfor ikke? Selv synes jeg det er best å programmere under Linux. Ikke så vanskelig å installere pakker, heller. 6979913[/snapback] Vet ikke jeg. Har vel egentlig Dual boot med Ubuntu 6.06 på hovedpcen også. Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 Windows XP Pro... VS.NET 2005 Jeg lastet bare ned en "pakkefil", sånn linux utgave pakke. Pakket den ut, og lå den mappen hvor jeg fant gtk.h inn i additional include directories. Ubuntu 6.06 er skolepcen, den blir nok ikke brukt til utvikling. 6979881[/snapback] insisterer du på å bruke VC++ under Windows gidder jeg ikke hjelpe deg i det hele tatt da jeg kun bruker MinGW under Windows og er ikke interessert i å bruke en kompiler som ikke er portabel.. da må du spørre noen andre :} bruker du Windows må jeg uansett dulle endel om jeg skal hjelpe deg med oppsett da jeg ikke har slike ting klart for meg "off hand"; koden blir lik (altså portabel), men installering og oppsett av selve gtk-bibliotekene og miljøet må gjøres på et eller annet vis (åpenbart ikke slik du gjør det over) Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) Hvorfor ikke? Selv synes jeg det er best å programmere under Linux. Ikke så vanskelig å installere pakker, heller. 6979913[/snapback] Vet ikke jeg. Har vel egentlig Dual boot med Ubuntu 6.06 på hovedpcen også. 6979920[/snapback] kjør på slik jeg har forklart over - det er gjort på 2 minutter; så tar du problemet med å få opp et gtk/utviklings-miljø under Windows siden når du er ferdig og vil porte .. edit: forøvrig enig med Norgul .. både programmering og håndtering av pakker (og i grunn alt annet; jeg har kjørt Linux full-time på alt siden 2001 .. WinXP ligger kun som et VMWare-image på laptop/desktop for test og bruk i sammenheng med porting) er overlegent under Linux Endret 1. oktober 2006 av lnostdal Lenke til kommentar
Mr.Garibaldi Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) kjør på slik jeg har forklart over - det er gjort på 2 minutter; så tar du problemet med å få opp et gtk/utviklings-miljø under Windows siden når du er ferdig og vil porte .. edit: forøvrig enig med Norgul .. både programmering og håndtering av pakker (og i grunn alt annet; jeg har kjørt Linux full-time på alt siden 2001 .. WinXP ligger kun som et VMWare-image på laptop/desktop for test og bruk i sammenheng med porting) er overlegent under Linux 6980012[/snapback] Har kanskje noe med at mange firmaer bruker VS som standard IDE, og det derfor kan være nyttig å lære seg hvordan man bruker dette... Hvorvidt dette er et fornuftig valg kan man sikkert diskutere, men jeg mener nå at så lenge det er et av de populære valgene, så bør man kunne sette det opp/bruke det. Og før jeg får beskjed om at jeg er en MS wh*re, så får jeg legge til at mitt favoritt IDE er herlig plattform uavhenige Emacs, så det gjør meg ikke noe å bytte mellom *nix, mac og win32... [EDIT] Og for å se om jeg kan hjelpe trådstarter... (Selv om jeg foreløpig bruker VS2003) Har du lagt til riktig dir'er under Linker, slik at VS vet hvor filene ligger? Både for debug og release? (Som har to forskjellige oppsett) [/EDIT] Endret 1. oktober 2006 av Mr.Garibaldi Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) kjør på slik jeg har forklart over - det er gjort på 2 minutter; så tar du problemet med å få opp et gtk/utviklings-miljø under Windows siden når du er ferdig og vil porte .. edit: forøvrig enig med Norgul .. både programmering og håndtering av pakker (og i grunn alt annet; jeg har kjørt Linux full-time på alt siden 2001 .. WinXP ligger kun som et VMWare-image på laptop/desktop for test og bruk i sammenheng med porting) er overlegent under Linux 6980012[/snapback] Har kanskje noe med at mange firmaer bruker VS som standard IDE, og det derfor kan være nyttig å lære seg hvordan man bruker dette... Hvorvidt dette er et fornuftig valg kan man sikkert diskutere, men jeg mener nå at så lenge det er et av de populære valgene, så bør man kunne sette det opp/bruke det. 6980484[/snapback] sikkert noe sant i det; men om jeg "måtte" så hadde jeg gjort all utvikling v.h.a. både portable verktøy og biblioteker -- det vil si at jeg hadde lagt til et build-script i kode-repoet for linux, og det jeg la til av kode ville dermed fungere under både linux og windows -- kolleger rundt meg ville sannsynligvis ikke merket noe til at koden jeg sjekket inn var "laget v.h.a. linux" siden den altså er portabel uansett edit: unntaket oppstår naturligvis så fort jeg trenger å legge til en nye filer for da må jeg også gjøre endringer i prosjekt/build-scriptet til VS .. jeg antar at dette er trivielt - eller at en grei kollega kan kan ta seg av dette uten at jeg har noe videre greie på det det finnes dog build-løsninger som også er like portable som kode/biblioteker; scons tar både i bruk GCC (event. MinGW) og VC++ -- tipper VC++ har mulighet til å kalle eksterne verktøy som scons fra IDEet og parse resulterende output i det scons eksekverer cl.exe; det bør ikke være noen forskjell der offtopic: om det hadde vært et "krav" at jeg/vi (men det er vel ikke "meg" vi snakker om her egentlig) utelukkende måtte bruke VS - noe som selvfølgelig ikke er nødvendig i utgangspunktet; så hadde jeg snudd i døra på et blunk og sagt "hei og hå" :} Endret 1. oktober 2006 av lnostdal Lenke til kommentar
Mr.Garibaldi Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 det finnes dog build-løsninger som også er like portable som kode/biblioteker; scons tar både i bruk GCC (event. MinGW) og VC++ -- tipper VC++ har mulighet til å kalle eksterne verktøy som scons fra IDEet og parse resulterende output i det scons eksekverer cl.exe; det bør ikke være noen forskjell der Som jo er en fin løsningen, så lenge du har friheten til å konfigurere maskin/repo selv. Men er dessverre en del steder som vil ha kontroll over dette, bl.a. siden de vil vite at oppsette er sikkert. (Selv om de kanskje ikke er like flinke til å sikre ting selv, men det er en annen ting) Pluss, som du ofte påpeker så bør man være åpen for å lære nye ting offtopic: om det hadde vært et "krav" at jeg/vi (men det er vel ikke "meg" vi snakker om her egentlig) utelukkende måtte bruke VS - noe som selvfølgelig ikke er nødvendig i utgangspunktet; så hadde jeg snudd i døra på et blunk og sagt "hei og hå" :} 6980592[/snapback] Det er jo selvsagt ditt valg. Og så lenge dette ikke er tilfellet i den delen av bransjen du er int. i, så er det jo flott. Men hvis du f.eks. vil jobbe i spill-bransjen, så er det ofte ett krav om VS erfaring/bruk. Men vi bør kanskje fortsette en evt. videre diskusjon i Gen. Prog, siden dette har heller lite med C++ å gjøre.... Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 Pluss, som du ofte påpeker så bør man være åpen for å lære nye ting 6980872[/snapback] vel, en forutsetning må jo da være at det faktisk _er_ noe nytt -- jeg anser ikke et IDE som VS som noe som inneholder betydelige forskjeller; det er bare en innpakning rundt en C/C++-kompiler/linker + et par hjelpeverktøy 99% av tiden skriver og tenker man design v.h.a. kode; og det er forskjeller i semantikk, måte å uttrykke seg på, abstrahere og fleksibilitet akkurat der jeg tenker på når jeg tenker "nye ting" ... mulig andre er av en annen oppfatning, men det er nå så :} Lenke til kommentar
Zethyr Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 Et par tanker angående hvordan du strukturere det hele: Kan ikke den ene klienten få serverfunksjon innebygget og få en no-ip-adresse knyttet opp mot IP'en? (slik gjorde jeg det når jeg prøvde meg på en klient/server etter beejs tutorial). Dersom dette ikke er tilfelle, bør ikke "serveren" bare gi den ene klienten den andres IP, for så å la dem koble seg direkte mot hverandre? Det er jo ikke særlig effektivt å måtte bruke 3 maskiner for å la 2 stykker snakke seg imellom, så det må finnes en bedre løsning. Lenke til kommentar
lnostdal Skrevet 1. oktober 2006 Del Skrevet 1. oktober 2006 (endret) Et par tanker angående hvordan du strukturere det hele: Kan ikke den ene klienten få serverfunksjon innebygget og få en no-ip-adresse knyttet opp mot IP'en? (slik gjorde jeg det når jeg prøvde meg på en klient/server etter beejs tutorial). Dersom dette ikke er tilfelle, bør ikke "serveren" bare gi den ene klienten den andres IP, for så å la dem koble seg direkte mot hverandre? Det er jo ikke særlig effektivt å måtte bruke 3 maskiner for å la 2 stykker snakke seg imellom, så det må finnes en bedre løsning. 6980995[/snapback] jo: * om begge - maskin A og B, står bak NAT må man bruke en maskin C (server) i midten til å "relaye" meldinger da hverken A eller B kan ha rollen som server .. (IRC fungerer på dette viset uansett, men har en mulighet man kan bruke om man ønsker kallt DCC-chat) * om maskin A står bak NAT så må maskin B ha rolle som server i det maskin C (server) bekrefter dette og kobler dem sammen - data blir da overført direkte mellom A og B uten at de trenger å gå via C * om maskin B står bak NAT så må maskin A ha rolle som server i det maskin C (server) bekrefter dette og kobler dem sammen - data blir da overført direkte mellom A og B uten at de trenger å gå via C A og B kobler seg alstå opp som klienter mot sentral server C i starten; så finner den ut av hva som er mulig etter dette og gir beskjed til klientene hvordan de skal kommunisere - enten det blir via serveren eller direkte mellom hverandre der den ene altså har rollen som server det letteste er naturligvis bare å bruke første alternativ uansett om andre eller tredje alternativ kanskje er mulig - men som du sier går det tregere og det blir mer last på en sentral server (edit: må bare legge til at man fint kan kjøre både en instans av server og klient på samme maskin) Endret 1. oktober 2006 av lnostdal Lenke til kommentar
Gjakmarrja Skrevet 2. oktober 2006 Forfatter Del Skrevet 2. oktober 2006 (endret) Skal sette opp laptopen til programmering også, da det sikkert kommer godt med. Men nå gjorde jeg som du sa da, jeg brukte MinGW under windows. Valgte GTK+ Application som template, men allikvel finner den ikke gtk.h som include. Merkelig altså. Endret 2. oktober 2006 av chills Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå