AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ein Formular mehrmals öffnen

Ein Thema von STaRDoGGCHaMP · begonnen am 30. Jul 2008 · letzter Beitrag vom 30. Jul 2008
Antwort Antwort
STaRDoGGCHaMP

Registriert seit: 1. Okt 2007
34 Beiträge
 
#1

Ein Formular mehrmals öffnen

  Alt 30. Jul 2008, 12:32
Hallo,
Momentan arbeite ich gearde an einem DLL-Injector. Zur Funktionsweise: Man kann einzelne Aufträge in eine Liste eintragen, dazu muss man prozess name und den DLL-Pfad angeben, die Aufträge werden dann in der Liste gesammelt und können einzeln bearbeitet, gelöscht oder injiziert werden (man kann auch alle aufträge auf einmal starten, aber das tut ja nix zur sache). Das Bearbeiten und Löschen funktioniert mittels eines eigenen PopUp-Menüs. Zur Verdeutlichung zwei Screenshots: http://img137.imageshack.us/img137/7...jector1bh5.gif
http://img411.imageshack.us/img411/2...jector2xq1.gif


Da Multiselect eingestellt ist kann man auch mehrere Aufträge in der Liste bearbeiten, löschen und injizierten. Beim Bearbeiten stellt sich mir jedoch ein Problem in den Weg. Der entsprechende Code im PopUpMenü sieht so aus:
Delphi-Quellcode:
procedure TForm_WInjector_Main.Menu_EditClick(Sender: TObject);
var i: Integer;
begin
  for i := 1 to ListView_Instructions.Items.Count do
    if ListView_Instructions.Items[i-1].Selected then begin
      InstructionEditor.Form_WInjector_EditInstruction.Label_InstructionNumber.Caption := 'Nr. ' + IntToStr(i);
      InstructionEditor.Form_WInjector_EditInstruction.Edit_ProcessName.Text := ListView_Instructions.Items[i-1].SubItems[0];
      InstructionEditor.Form_WInjector_EditInstruction.Edit_DllPath.Text := ListView_Instructions.Items[i-1].SubItems[1];
      InstructionEditor.Form_WInjector_EditInstruction.Caption := 'Instruction Editor: Nr. ' + IntToStr(i);
      InstructionEditor.Form_WInjector_EditInstruction.Visible := TRUE;
    end;
end;
(InstructionEditor is ne eigene erstellte und eingebundene Unit)

Wenn jetzt mehrere Einträge markiert und bearbeitet werden wird nur der letzte markierte Eintrag im Editor angezeigt (ist ja auch logisch, da die Schleife ja bis zum Ende durchläuft..). Nun meine Frage: Wie ist es möglich sozusagen mehrere Instanzen von dem InstructionEditor-Formular zu starten. Am besten wäre es wenn man x Einträge markiert hat auch x Editor-Fenster gleichzeitig aufgehen.
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: Ein Formular mehrmals öffnen

  Alt 30. Jul 2008, 12:42
Meinst du sowas

Application.CreateForm(TMeineForm,MeineForm); Offnet dir ein Formular mehrmals


Gruß Sascha
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Benutzerbild von spaxxn
spaxxn

Registriert seit: 19. Nov 2004
253 Beiträge
 
Delphi XE2 Enterprise
 
#3

Re: Ein Formular mehrmals öffnen

  Alt 30. Jul 2008, 12:43
Für jedes markierte Element ein Formular instanzieren und anzeigen?

Denke mal, dass du derzeit mit nur einem instanzierten Formular arbeitest...


Edit: @fuknersascha, denk nochmal über das nach, was du da geschrieben hast
"Hey Süße,
hol mir mal was zu trinken! Du wirst schon wieder hässlich!"

Zitat eines Betrunkenen
  Mit Zitat antworten Zitat
gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: Ein Formular mehrmals öffnen

  Alt 30. Jul 2008, 12:43
Du kannst doch mehrere Instanzen des InstructionEditor erstellen, oder?MyEditor := TInstructionEditor.Create (...); günstig wäre es dann noch die erstellten Editoren in einer Liste oder einem Array zu halten und sie später evtl. wieder frei zu geben.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz