[C++] Kolla om programet är utdaterat!

Permalänk

[C++] Kolla om programet är utdaterat!

Hej!

Jag håller på och försöker lära mig C++ och jag vill att mitt program ska kolla till exempel mitt forum/dropbox om mitt program är gammal och om det finns ny version.
Men jag har kört fast och vet inte riktigt hur jag ska göra...
Så om någon kan hjälpa mig så uppskattar jag det!

Tackar

Permalänk
Medlem
Skrivet av TheBlueBird:

Hej!

Jag håller på och försöker lära mig C++ och jag vill att mitt program ska kolla till exempel mitt forum/dropbox om mitt program är gammal och om det finns ny version.
Men jag har kört fast och vet inte riktigt hur jag ska göra...
Så om någon kan hjälpa mig så uppskattar jag det!

Tackar

Jag tror det blir lättare om du visar var du faktiskt sitter fast istället för att någon ska programmera allt åt dig.

Permalänk
Skrivet av Forsgren:

Jag tror det blir lättare om du visar var du faktiskt sitter fast istället för att någon ska programmera allt åt dig.

Jag har försökt att googla men hittar inget så jag har denna dåliga "lösningen"

int main(MessageBox(0, "Checkheck the forum and see if it is outdated!", "Notice:",MB_OK));

Permalänk
Medlem

Du behöver två program.
Ett som får reda på versionen ur det riktiga programmet samt uppdaterar det.
Sedan det riktiga programmet.

Uppdateringsprogrammet kommer då jämföra versionen på programmetm kontrollera mot en webbsida, om det finns en nyare version stänger du av programmet och lägger till den nya versionen.

Visa signatur

i7-6700K | MSI Z170A | MSI 1080 8GB | 16GB Kingston HyperX | Intel 600P 256GB | Samsung EVO Basic 840 250GB x2 raid 0 | Corsair RM 750W | 3 x Dell U2414H

Permalänk
Skrivet av gn1p:

Du behöver två program.
Ett som får reda på versionen ur det riktiga programmet samt uppdaterar det.
Sedan det riktiga programmet.

Uppdateringsprogrammet kommer då jämföra versionen på programmetm kontrollera mot en webbsida, om det finns en nyare version stänger du av programmet och lägger till den nya versionen.

Ok tack för svaret!

Permalänk
Medlem

Det finns många sätt att lösa ditt problem på.
Kanske ska börja med den lösning jag tror du enklast själv kan implementera:
http://winsparkle.org/

Annars har du Googles omaha: https://code.google.com/p/omaha/
men där krävs mickel med servern som dom inte bjussar på, men du kan kolla källkoden till klienten och lära dig en hel del.

Skickar med en länk som samlat info om mängder av auto-update system:
http://www.fredshack.com/docs/auto_update.html

Visa signatur

weeeee

Permalänk
Medlem

Förstår inte riktigt vad du vill göra.

Men jag löste ett liknande problem i mitt spel där man "ingame" kan leta efter uppdatering och sedan ladda ned om det finns en tillgänglig(http://crazycubes.net).

hur det fungerar i mitt spel:

1:Trycker man på 'F8' i spelmenyn så ansluter spelet till min server där jag har en textfil lagrad. I textfilen står det vilken version den nyaste är t.ex 2.2

2: Spelet läser textfilen och gämför med den lokala versionen (versionen som är installerad på datorn)-

3: Är den lokala versionen lägre så kan man välja att ladda ned en uppdatering.

vh

Visa signatur

[IT-Dept]
Ryzen 1700 OC - 32 - 1070

Permalänk
Medlem

Och om man räknar med att ens program kommer bli riktigt poppis så skulle jag iaf köra versionscheck vis DNS. Då får man ju cachning och replikering "gratis".

Permalänk
Medlem
Skrivet av iXam:

Och om man räknar med att ens program kommer bli riktigt poppis så skulle jag iaf köra versionscheck vis DNS. Då får man ju cachning och replikering "gratis".

Förstår inte hur du tänkt att DNS ska hjälpa med cachning och replikering.
DNS - Domain Name System - är ett distribuerat namn-system som förenklat svarar på vart en server med namn t.ex. google.se befinner sig och ger som svar en ip-adress t.ex. 74.125.232.127

Men visst kan det vara trevligt att ens program frågar efter uppdateringar via:
updates.mycoolapp.com
istället för
74.120.200.19

cachning och replikering av dina uppdateringar får du lösa på annat vis

Visa signatur

weeeee

Permalänk
Medlem
Skrivet av mounte:

Förstår inte hur du tänkt att DNS ska hjälpa med cachning och replikering.
DNS - Domain Name System - är ett distribuerat namn-system som förenklat svarar på vart en server med namn t.ex. google.se befinner sig och ger som svar en ip-adress t.ex. 74.125.232.127

Men visst kan det vara trevligt att ens program frågar efter uppdateringar via:
updates.mycoolapp.com
istället för
74.120.200.19

cachning och replikering av dina uppdateringar får du lösa på annat vis

Med DNS kan man kolla vilken som är den senaste versionen av en programvara genom att exempelvis fråga efter progname.domain.tld.
Ett ipv4-adress består ju av 32 bitar och där kan man stoppa in den senaste versionsnumret.
Fördelen med detta om man har väldigt många kunder är att dessa records cachas (replikeras) ju hos varje ISPs DNS-server och om det ligger 1000 personer som frågar efter senaste version inom given TTL så kommer endast en fråga hamna hos programskaparens DNS.
Och ett UDP-paket är ju betydligt lättare är en HTTP-fråga över TCP så mycket bandbredd och andra resurser sparas.

Själva uppdateringsbiten kan ju laddas ner via HTTP/FTP/Bitorrent.

Permalänk
Medlem
Skrivet av iXam:

Med DNS kan man kolla vilken som är den senaste versionen av en programvara genom att exempelvis fråga efter progname.domain.tld.
Ett ipv4-adress består ju av 32 bitar och där kan man stoppa in den senaste versionsnumret.
Fördelen med detta om man har väldigt många kunder är att dessa records cachas (replikeras) ju hos varje ISPs DNS-server och om det ligger 1000 personer som frågar efter senaste version inom given TTL så kommer endast en fråga hamna hos programskaparens DNS.
Och ett UDP-paket är ju betydligt lättare är en HTTP-fråga över TCP så mycket bandbredd och andra resurser sparas.

Själva uppdateringsbiten kan ju laddas ner via HTTP/FTP/Bitorrent.

Ursäkta min trångsynthet i första svaret
Helt klart ett listigt sätt som sparar våra resurser. Det intressanta är att många uppkopplingar som finns runt om i städer som kräver användarnamn och lösenord släpper igenom dns-frågor. Även företag där användarna tvingas bakom företagsproxy så tillåts ibland dns-frågor, då kan användarna åtminstone få reda på att deras mjukvara är utdaterad.
En smart implementering i stil med: http://code.kryo.se/iodine/
skulle kunna ge en långsam/dyr kanal för även dataöverföring.

Tack iXam för att du givit mig en av kvällens nyvunna kunskaper

Visa signatur

weeeee