Odejście od formy

0

Witam.

Piszę w Delphi 7. Piszę program, który nie potrzebuje wyglądu. Chcę korzystać tylko i wyłącznie z:

  • Komponent Timer
  • Komponenty INDY
  • Okienka
  • Funkcje modyfikowania plików, rejestru, odczyt procesów

Plik waży 360 kb. Zależy mi na wadze, jak odchudzić program do minimum? Dopiero zaczynam programowanie i proszę o jakieś rady.

0

360 kB to chyba można przeżyć. Na dyskietce zmieścisz, a raczej trudno o mniejszy nośnik…
Jeśli napiszesz program w WinAPI, bez zewnętrznych komponentów to zmieścisz się pewnie w kilku-kilkunastu kilobajtach – ale czy to gra warta świeczki?
Spróbuj kompresora plików wykonywalnych, np. UPX. zmniejszy ci plik o połowę, a może nawet o dwie trzecie.

0

Piszę program, który musi zajmować 40-60 kb. Po prostu musi, mam swoje powody. :P

Jak użyć WinAPI, jakieś rady?

0

http://www.opensc.ws/tutorials-articles/1754-delphi-reduce-exe-size-your-app.html
http://delphi.about.com/od/objectpascalide/l/aa091101a.htm

kiedyś była paczka zastępująca standardowe moduły delphi (min. windows, system, forms) i znacząco zmniejszająca rozmiar exe ale nie mogę sobie przypomnieć jak się zwała. BTW szczerze wątpię, żebyś w delphi zszedł z exe do 40-60kB, chyba że UPXem

0

Na pewno z użyciem Indy czy innnego pakietu jakiego nie lubią Haterzy będzie ciężko.
Trzeba by było nie używać TTimer tylko funkcji WinApi. I tak moduły sieciowe, będa Ci
powodowały puchnięcie Exeka. Pod Delphi 7 sam spakowany exe z modułem httpsend
od znienawidzonego przez niektórych pakietu zajmuje po spakowaniu UPXem ~58 KB.

0

I tak moduły sieciowe, będa Ci powodowały puchnięcie Exeka
Bez nich też da się obejść – ale to straszne rzeźbienie. „powody” muszą być naprawdę mocne, żeby było warto.

0

-Indy
-Timer
-Form
+WinApi
+Delphi 2
= kilkanaście kilobajtów
tylko po co to komu, czy naprawdę 1 MB czy 20 KB w dzisiejszych czasach to różnica?
a godzina pracy a ~10 (w zależności od opanowania programowania w czystym WinApi) to jednak robi robotę.
Jak Ci zależy na małym pliku proponuję zamiast w Delphi napisz program w assemblerze, pod "winde" to swego czasu przypadł mi do gustu MASM + środowisko RadAsm (to było kila lat temu teraz dałem sobie luz) ale tak jak wszyscy piszą to jest robota dla masochistów i jeżeli nie ma naprawdę konkretnych powodów aby to robić to nie warto.

0
linksys napisał(a)

Chcę korzystać tylko i wyłącznie z:

  • Komponent Timer
  • Komponenty INDY
  • Okienka
  • Funkcje modyfikowania plików, rejestru, odczyt procesów
linksys napisał(a)

Dopiero zaczynam programowanie i proszę o jakieś rady.

trojan jak nic.... ;]

0
Azarien napisał(a)

I tak moduły sieciowe, będa Ci powodowały puchnięcie Exeka
Bez nich też da się obejść – ale to straszne rzeźbienie. „powody” muszą być naprawdę mocne, żeby było warto.

Np. robak albo trojan. Wystarczy spojrzeć na liste tego w czym ma grzebać. No i ta wielkość. You do it wrong!!!
WinApi się kłania oraz sockety. To podstawa!

1 użytkowników online, w tym zalogowanych: 0, gości: 1