[Delphi] Generator programowy.

0

Witam.
Jak stworzyć generator programów taki jak:
Mam program nr1 w który wpisuje różne wartości (przypuśćmy że są to login i hasło)

Naciskam przycisk Generuj i tworzy mi się aplikacjia exe (którą wcześniej np. moge wrzucić do zasobów) nie chodzi tu o kompilator. Moge też ewentualnie zmienić program który wcześniej napiszę (edytor execów).
Jest mi to potrzebne do zrobienia programu przechowującego hasła który chcĘ sobie napisać.
Bardzo by się przydały przykłady bo sprawa jak się domyślam nie jest prosta.

0

No tak.. tylko nie rozumiem dokładnie co chcesz zrobić. Dołączenie do zasobów drugiej aplikacji jest proste.. ale nie możesz oczywiście edytować tej aplikacji w zasobach .. - opisz co chcesz zrobić.. zrozumiale :)

0

co do samego przechowywania haseł, to dobra rada: nie rób tego za pomocą tablic.

0

Więc tak:
Najpierw wyciągam mój program z zasobów edytora którego zrobie
po wyciągnięciu edytor powinien otworzyć program do edycji gdzie mgółbym zmienić login i hasło do programu wyciągniętego.
Edytor powinien zapisać program po zedytowaniu.
Np.
Naciskam button 'generuj exeka'
W tym momencie program wyciąga drugi program z zasobów
w editach wyświetla login i hasło
wpisujemy w nich (editach) nowe hasło i nowy login
Naciskamy Generuj lub zapisz
i exec wyciągnięty z zasobów powinien już mieć w sobie login i hasło z pól editów z edytora a nadodatek można by było się nimi zalogować do tak wyciągniętego i wyedytowanego execa z zasobów.

0

Ja to bym robił tak. W programie rąbnąłbym już jakiś login i hasło, po czym sprawdziłbym, w którym miejscu są zapisane. Następnie modyfikowałbym te miejsca i sprawdzał, czy to będzie działać. Aha i jeszcze jedno: ustal jakąś maksymalną długość dla tego loginu i hasła i z taką długością stwórz te domyślne hasło i login, a do ich końca dodaj jakiś znaczek, którego nie będzie mogło być w haśle ani loginie. Następnie przy tworzeniu nowych loginu i hasła dodaj do ich końca te znaczki i nadpisz część tych domyślnych loginu i hasła, kończąc tym znaczkiem, nie zmieniaj długości pliku (to może niezły bajzel z tego exeka zrobić), a przy sprawdzaniu hasła obcinaj od miejsca, gdzie ten znaczek się pojawi. No i to chyba powinno wystarczyć.

0

A przekazać to do tej aplikacji możesz na przykład tak:

for i := 1 to length(PassWord) do
  PostMessage(hdn, $7FFA, Byte(Password[i]), 0);

A odebrać przez komunikat:

procedure Answer(var Msg: TMessage); message $7FFA;

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