Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[pytanie] patcher


PanTenorek

Rekomendowane odpowiedzi

Opublikowano

najlepiej mieć źródła programu, w większości nie można edytować

 

język jaki ci odpowiada w każdym się da , prosty w Autoit tez zrobisz , masz przecież przykład i kod źródłowy nawet dla samego autoita

If you = stupid then

insert(foot.in.your.ass)

end if

licznik-54-96732-stat.png

Opublikowano

Jest:

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Patcher", 282, 130, 192, 124)
$Button1 = GUICtrlCreateButton("Aktualizuj", 80, 24, 121, 33)
$Button2 = GUICtrlCreateButton("Graj", 80, 72, 121, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
       Case $GUI_EVENT_CLOSE
           Exit

   EndSwitch
WEnd

obraz24.png


Opublikowano

@GameOverMan, pojechałeś :D

 

Dobrze, a że @topic ma szczęście że napisałem takie coś, to mu podpowiem kilka rzeczy.

 

Po pierwsze - Nie da się sprawdzić poprzez patchera sum kontrolnych plików na serwerze. Jedyną dobrą opcją jest napisanie skryptu który obliczał będzie sumy plików do wrzucenia i zapisywał do pliku, z którego patcher będzie korzystał podczas sprawdzania plików. A istnym hardkorem byłoby napisanie uploadera któremu wskazałbyś folder a ten robiłby wszystko za ciebie.

Narazie najlepszym rozwiązaniem jest sprawdzanie wielkości plików, które jest wystarczająco dokładne.

 

Po drugie - Mogę ci nawet dać spis funkcji których możesz użyć do zrobienia patchera

Po pierwsze - Uwagi do GUI:

- Użyj trybu OnEvent, jest najlepszy do takich zabaw.

- Chcesz być hardkorem, to zrób download plików z paskiem postępu (a nawet dwoma). Jest to rzecz jasna wykonalne, inaczej nie miałbym go w swoim patcherze.

- Dobrą opcją jest zrobienie editboxa który pełniłby opcję swoistego logu. Jeśli widziałeś stary patcher Metin2 (ahh... wspomnienia ^^) to wiesz o co chodzi.

- Obrazkowe GUI? Nie ma problemu. Wbrew pozorom obrazy w .jpg da się zapisać w takiej jakości (i wielkości) jak .png, na przykład przy pomocy GIMPa. Używasz odpowiedniego stylu oraz GUICtrlCreatePic i voila! Gorzej jest jednak z własnymi progressbarami...

- Chcesz mieć zawsze aktualne informacje o czymśtam w swoim patcherze? A od czego jest _IECreateEmbedded? Wsadzasz do GUI okienko przeglądarki i nie kombinujesz więcej - Tylko edytujesz stronę :P

 

A teraz uwagi do kodu:

- Funkcje których możesz użyć:

InetGet
InetGetInfo
InetGetSize

- Matematyka nie boli. Szczególnie jeśli chcesz mieć download współgrany z progressbarem.

- Grunt to płynność programu. Staraj się utrzymać kod jak najszybszym i najbardziej czytelnym.

- Help to wielka pomoc. Naprawdę. No nie robię sobie jaj. Zajrzyj tam czasem, może się czegoś ciekawego dowiesz?

 

Tyle z mojej strony. Podsumowując, napisałem ci jak zrobić ładny i dość szybki patcher. Od ciebie tylko zależy jak wykorzystasz tą wiedzę.

846331404756772371599.jpeg
Opublikowano

jak pisałem w tym katalogu jest program na którym może sie wzorować /AutoIt3/Examples/Extras/AutoUpdateIt

If you = stupid then

insert(foot.in.your.ass)

end if

licznik-54-96732-stat.png

Opublikowano

Wybacz, że tak skromnie, ale polecam mój tut. :D

http://www.mpcforum....zrobic-patcher/

 

@EDIT

No w sumie... Batch to nie żadne programowanie, ale jak komuś zależy na działaniu, a nie wyglądzie, to może przejść :P

 

@EDIT2

Jeżeli jednak chcesz zrobić w AutoIT, to polecam ten tut:

http://www.mpcforum.pl/topic/257976-tutautoitjak-zrobic-wlasny-patcher/


897771404427433574016.png

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...