Jump to content
  • Announcements

    • Xmat

      Pravidlo pro postování v TTT

      Do sekce Tipy, triky, tutoriály nepatří žádné dotazy.   Postujte sem vaše návody, tipy a různé další věci jež uznáte za vhodné sdělit zdejšímu osazenstvu, ale veškeré dotazy směřujte do sekce Všeobecná diskuse.
    • Replik

      Seznam návodů a důležitých témat v této sekci

      Pro lepší přehlednost jsem vytvořil tento seznam, který vás, méně zkušené, lépe provede touto sekcí. Věřím, že zde najdete, co hledáte. Vypsané jsou návody, které jsou oficiálně uznané jako návody. Běžné diskuze, které neposkytují postupy a rady zvěřejněny nejsou.   Instalace vlastního MaNGOS Serveru Díky těmto návodům budete (měli by jste být) schopni vytvořit a následně spustit váš vlastní server. Nastavení je pro verze s i bez datadisku.   Instalace MaNGOS Serveru (bez datadisku TBC) - Autor Benny Instalace MaNGOS Serveru (s datadiskem TBC) - Autor Malfik Instalace MaNGOS Serveru v prostředí Linux - Autor charlie Instalace MaNGOS Serveru v prostředí Linux - Autor kupkoid   Chyby a jejich řešení při přihlašování k serveru - Autor Cybe   Zálohování uživatelských dat   Dávkový soubor (BAT soubor) pro vytvoření SQL záloh - Autor Replik   Kompilování - tvoření vlastních release (revizí)   Tvorba kompilací pro Win32 (MangoScript) - Autor bLuma   Ostatní - těžko zařaditelné, ale neznamená to, že nejsou dobré   VIP Systém - Autor charlie Tvorba Webových stránek pro MaNGOS - Autor zahuba Tvorba teleportačních NPC (MangoScript) - Autor Replik Registrační web (původně předělaná SPORA) Funkční pro Antrix i MaNGOS - Autor Replik Nastavení a spuštění Minimanager pro MaNGOS - Autor BlackMartin Nastavení MaNGOS Website - Autor Artorius   Samozřejmě jsou zde i jiné návody, ale tyto jsou nejvíce používané, proto věřím, že vám budou nápomocné. Tuto sekci budeme upravovat podle potřeby. Pokud by jste něco nenašli nebo si nevěděli rady, hledejte na fóru a teprve potom založte vlastní topik. Pokud nějaký autor vytvoří kvalitní návod a chtěl by ho zveřejnit i v tomto seznamu, doporučuji, aby mi napsal zprávu skrze PM.   Díky a přeji hezký den na WoWResource   Replik
    • Aristo

      Příspěvky tam, kde nemají co dělat

      Dodržujte zákaz přispívání do topiků s repaky pokud si to zakladatelé nepřejí!! Opakované psaní příspěvků bude trestáno warnem.
    • Aristo

      Používání spoilerů

      Poslední dobou má většina uživatelů fora zvláštní nutkání postovat extrémně dlouhé texty nebo kódy, které zabírají v nejedenom případu i 80% obsahu celé stránky a hodně tak zvedají nepřehlednost v topiku. Chtěl bych všechny uživatele požádat, aby při postování citací, jakýchkoliv kódů, errorů, atp... delších než 30 řádků používali funkci spoileru.   Funkci vyvoláte příkazem [spoiler] text [/spoiler]   Ukázka:  
axxxa

[Release] Axxiny Launchery ^^

Recommended Posts

nikde tam nevoláš tu funkci server_info().

dá se volat bez toho, že bych musel požadovat kliknutí na tlačítko? nějak, aby se o to uživatel nemusel starat, protože Axxxa to tam má volané tak, že nejdřív si člověk musí přidat server a označit si ho myší pro zobrazení.

 

+ nevíte někdo, jak udělat akci, aby se opakovala za určitý čas? cca 1 minuta

Edited by Danshaman

Share this post


Link to post
Share on other sites

Mělo by stačit tu metodu zavolat ve form_loadu (doubleclick na form v designeru);

 

Jednou za určitý čas - buďto timer (je v toolboxu), nebo Thread.Sleep(hodně velký číslo); v kombinaci s while cyklem

(Thread.Sleep ti zmrazí celej thread, timer nevím, nepoužívám). Btw takhle zjišťuješ dostupnost realm serveru, jestli chceš checknout world server, změň si port ;) )

Edited by axxxa
  • Upvote 1

Share this post


Link to post
Share on other sites
Mělo by stačit tu metodu zavolat ve form_loadu (doubleclick na form v designeru);

 

Jednou za určitý čas - buďto timer (je v toolboxu), nebo Thread.Sleep(hodně velký číslo); v kombinaci s while cyklem

(Thread.Sleep ti zmrazí celej thread, timer nevím, nepoužívám). Btw takhle zjišťuješ dostupnost realm serveru, jestli chceš checknout world server, změň si port ;) )

Jj, tu metodu server_info() jsem z formy zavolal, akorát potom se volání neopakuje. Našel jsem jeden článek o cyklech, tak snad na to přijdu. Zkusil jsem goto přímo v metodě, že metoda volala sama sebe, ale to mi ten prográmek ani nenastartoval, protože takový cyklus je asi dost náročný; nicméně kompilátor mi to uznal. :-D

Share this post


Link to post
Share on other sites

Cykl ti nepomůže, dej si tam timer. Nastav enabled na true, interval 1000-5000, na event Tick volej tu metodu co aktualizuje online stav.

Share this post


Link to post
Share on other sites
Cykl ti nepomůže, dej si tam timer. Nastav enabled na true, interval 1000-5000, na event Tick volej tu metodu co aktualizuje online stav.

ten timer je v setinách sekundy nebo v jiné časové jednotce? 5000 mi přijde nějak moc a navíc je to číslo pro čas netypické.

Share this post


Link to post
Share on other sites

Axxxa? v tom tvém kódu jsem objevil chybku, která se ale projevila až použitím v mém prográmku. Zkoušel jsem potom tvůj launcher, a tam se ta chybka neprojevila. Asi to dNF 2.0 bere.

 

Je to hned na začátku, řádek

IPAddress ipa = (IPAddress)Dns.GetHostAddresses(hostname)[0];

jsem musel hodit pod try{}

ty ho máš mimo něj

public bool online(string host, int port)
        {
            string hostname = host;
            int portno = port;
            try
            {
                IPAddress ipa = (IPAddress)Dns.GetHostAddresses(hostname)[0];
                System.Net.Sockets.Socket sock = new System.Net.Sockets.Socket(System.Net.Sockets.AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp);
                sock.Connect(ipa, portno);
                if (sock.Connected == true)
                    return true;
                else
                    return false;
                sock.Close();
            }

            catch (System.Net.Sockets.SocketException ex)
            {
                return false;
            }
        }

 

Abych vysvětlil, o co jde. Když jsem byl odpojený od internetu, tak mi tenhle řádek vyhodil chybu, takže jsem musel odchytit výjimku. Při zkoušce launcheru mi tadle chyba nenastala

 

P.S.: aby se neřeklo, že jenom kopíruju kódy, dovolil jsem si Axxxu přidat do assembly info jako spoluautorku a přidat jí tam autorská práva na její část kódu

Edited by Danshaman

Share this post


Link to post
Share on other sites

Pro axxxu: Neber to prosím jako kritiku, ale mám pro tebe doporučení:

 

Nepřijde mi moc dobré používat to ukládání pomocí # a později splitu na rozdělení, nefungovalo mi to vždy dobře.

Myslím že by se zde velice hodily

[serializable] Konstruktory

 

(System.Runtime.Serialization.Formatters.Binary;)

 

spolu se Serialize a Deserialize funkcemi. :-)

 

Myslím že díky tomu vyhneš zbytečným errorům :-)

Edited by amertak

Share this post


Link to post
Share on other sites

Podívej se, jak je to starý, teď už taky píšu úplně jinak ;) Teď bych to nejspíš řešila přes xml soubory, nebo něco jako SQL server compact ;)

  • Upvote 1

Share this post


Link to post
Share on other sites

Sorry, doublepost. Jenom kdyby měl někdo zájem o něco, čemu stačí jeden soubor umístěný kdekoliv, co si může upravit pro svůj server;

Včera jsem něco málo sepsala - někdo to zase chtěl, oproti předešlým launcherům to už konečně má i docela dobrej kód (myslím ;) ).

Je to v prvním postu, dám to isem.

 

Může vypadat třeba takhle

launcherar6.jpg

Download solution

http://filebeam.com/0850414fb2fb0d53d2a165e60df9add9

Preview

http://filebeam.com/90210fe086ca0cce1d5c1f72f898abcd

Edited by axxxa
  • Upvote 2

Share this post


Link to post
Share on other sites

Tento launcher ale není moc připravený na WotLK, radil bych to trochu upravit ve stylu, že si zjistí jaká je to jazyková verze, aby pak mohl zapsat do Data\enUS\realmlist.wtf např. :-)

 

Např moje řešení pro dve nejrozšířenější jazykové verze, vím že to jde udělat líp, ale stačí mi to :

 

if (Directory.Exists(@"Data/enGB"))
                             {

                                using (StreamWriter Zapsat = new StreamWriter(adresar + @"Data/enGB/realmlist.wtf"))
                                {
                                  Zapsat.WriteLine(realmlist);
                                }

                             }
                             else if (Directory.Exists(@"Data/enUS"))
                             {
using (StreamWriter Zapsat = new StreamWriter(adresar + @"Data/enUS/realmlist.wtf"))
{
     Zapsat.WriteLine(realmlist);
}

                             }

Share this post


Link to post
Share on other sites

oj, tohle mi nedocvaklo. No, hned to opravím.

 

Linky upraveny

Mělo by stačit odkomentovat tohle, netestováno, ale nevidím důvod aby to nešlo.

if (Directory.Exists(location + "\\Data\\enUS")) 
                    {
                        path = location + "\\Data\\enUS";
                    }
                    else if (Directory.Exists(location + "\\Data\\enGB"))
                    {
                        path = location + "\\Data\\enGB";
                    }

Edited by axxxa
  • Upvote 1

Share this post


Link to post
Share on other sites

Axxxo prosím mohla by jsi mi napsat jaké položky mam editovat ? Realm jsem našel .. myslim ty informace .. jak tam máš lorem ipsum :)

Share this post


Link to post
Share on other sites

lorem ipsum mas pres webove rozhrani koukni http://axxxa.wz.cz/launcher/ musis si udelat takovy kod a dat ho nekam na web a to same vypis online hracu a server statusu :) najdes to lehce mas tam 6souboru tak si to otevri v notepadu a dej hledat tu adresu ... a mas to :)

 

EDIT: je to soubor Form1.Designer.cs

Edited by Barny

Share this post


Link to post
Share on other sites

Informace - web; otevřete tu solution ve visual studiu, otevřte si form designer, klikněte na jeden z těch web browserů a v properties (v pravo) se vám ukáže jedna z kolonek url, tak si to tam přenastavte ;)

Edited by axxxa
  • Upvote 1

Share this post


Link to post
Share on other sites

OT: Po kazdom spusteni wow sa kontroluje a generuje zapis do REG. takze hladanie cesty ako to bolo hore pouzite cez REG by fungovalo.

Share this post


Link to post
Share on other sites

Je možný že se ten nový launcher větším rozlišením obrazovky roztahuje tím pádem je to celý takový rozházený ? u mě to jde v pohodě ale u kamoša ne :)

Share this post


Link to post
Share on other sites

Není to možný, má tam natvrdo daný velikosti, jestli to dělá něco jinýho, je to chyba frameworku nebo bůh ví čeho.

 

Jinak ano: stejnej problém měl někdo s tím předchozím launcherem, nevím proč to dělá, na netu se o tom nic nedá najít a podle mě je to chyba dotyčnejch.

edit2: Jinak moje rozlišení je 1920x1200, takže "větším rozlišením" se fakt neroztahuje ;) Na jeho místě bych zkontrolovala, má-li nainstalovaný .NET Framework 3,5 , popřípadě zkontrolovala dostupnost updatů pro vistu; SP 1 je snad samozřejmostí.

 

edit3: jo, btw, mám to :-) Klikněte v designéru na form, v properties najděte AutoScaleMode (v pravo dole) a nastavte u něj none.

Edited by axxxa
  • Upvote 1

Share this post


Link to post
Share on other sites

Ja myslim ten velkej modrej zdali by se dalo udelat jako normalne s odkazem na ofik aby to stahovalo informace jen aby to nestahovalo patche apod...

Share this post


Link to post
Share on other sites

Tak nevím kuci proč se jí furt na něco ptáte.. dyt to je primitivní.. já sem se na nic neptal nečetl tutorial v žádným jazyku sem neuměl a udělal jsem to ... dyt to je jednoduchý otevřete to akorát v Visualu a pak dáte formu a hrajete si s tím jak to naházíte si to tam jak chcete.. okýnko pro nivinky si tam můžete zmenšit osobně sem si z změnit realmlist udělal button a to v žádnym jazyku neuměl jsem.. díky tobě axxo mi to začíná i jít... stačí pochopit kde co je... musím říct že to je exeletní a rád bych když už mám te launcher hotovej jestli bys mi neposlal kod na ten online status co je nahoře v pravo v rohu.. nerad bych to stahoval a přepisoval celý

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×