|
Antwort |
Registriert seit: 16. Mär 2013 71 Beiträge Delphi 7 Professional |
#1
Delphi-Version: 5
Hallo,
so viel Spaß mir as Anfänger das Programmieren meines kleinen Pressemitteilungs-Helfers auch macht...manchmal könnte ich verzweifeln. Ich baue mir gerade ein Helferlein, das mir die lästige Arbeit mit Pressemitteilungen etwas erleichtern soll. Es ist im Kern ein automatisches Ausfüllprogramm, basierend auf einem Code, den ich mal hier gefunden habe: http://www.swissdelphicenter.ch/de/showcode.php?id=262 Das klappt eigentlich auch ganz gut...zumindest wenn ich meine eigenen Webseiten oder die, im Code angegebene Seite vom swissdelphicenter ansteuere bekomme ich laufend Abstürze. In der Entwicklungsumgebung selber lautet die Fehlermeldung: Project xyz raised exception class EOleError with Message 'Methode 'Name' not supported by automation object. Process stopped. Use Step or Run to continue. Der Debugger stoppt bei folgendem Code: if FormItem.Item(j).Name = FieldName then Aber wie gesagt, das macht er niemals bei der Seite vom Swissdelphicenter oder meinen Testseiten. Ich vermute deshalb, daß es etwas mit dem Verhalten der angesteuerten Webseiten zu tun hat. Möglicherweise mit diversen JavaScript-Fehlermeldungen, ich ich durch Silent := true einfach abgeschaltet habe. Wenn ich das Programm direkt starte, also nicht über die IDE, dann läuft es ein wenig stabiler. Wenn es dann aber doch abstürzt, dann produziert es die Fehlermeldung: Floatng Point division by zero. Ich kann mit beiden Fehlermeldungen nicht sehr viel anfangen und verstehe nur, daß es sich um einen Laufzeitfehler handelt, der durch die Methode "Name" ausgelöst wird. Wäre klasse wenn jemandem etwas dazu einfallen könnte. Viele Grüße Erutan
Holger
|
Zitat |
Registriert seit: 16. Mär 2013 71 Beiträge Delphi 7 Professional |
#2
Oh, ich sehe gerade, daß sich da ein Fehler eingeschlichen hat. Das Forum glaubt, ich würde noch mit Delphi 5 arbeiten. Nein, ich habe mich mittlerweile bis zu Delphi 7 hochgearbeitet Hab's inzwischen geändert.
Holger
|
Zitat |
Registriert seit: 4. Dez 2012 Ort: Augsburg, Bayern, Süddeutschland 419 Beiträge Delphi XE4 Ultimate |
#3
Hallo,
Zitat:
Das klappt eigentlich auch ganz gut...
Zitat:
zumindest wenn ich meine eigenen Webseiten oder die, im Code angegebene Seite vom swissdelphicenter ansteuere bekomme ich laufend Abstürze.
Zitat:
Aber wie gesagt, das macht er niemals bei der Seite vom Swissdelphicenter oder meinen Testseiten.
Vielleicht gibst Du etwas Code oder (besser beides) eine URL dazu, die die Exception auslöst. Sonst können wir noch 'ne ganze Weile im Nebel stochern. Gruß
Volker Zeller
|
Zitat |
Registriert seit: 28. Feb 2011 Ort: Mannheim 1.384 Beiträge Delphi 10.4 Sydney |
#4
Würd' ich auch gern mal wissen, was da Delphi so macht? Scheint irgendwie mit dem Variant zusammenzuhängen.
Zum Beispiel wird das kompiliert??
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var A: Variant; begin A.Nonsens.Tralala.SomeItem(119).SomeBlödsinn := 'Test'; end; |
Zitat |
(Moderator)
Registriert seit: 9. Dez 2005 Ort: Heilbronn 39.861 Beiträge Delphi 11 Alexandria |
#5
Ich bin mir nicht ganz sicher, ob er sich am ö stort, aber grundsätzlich sollte die Zeile komplilieren
Markus Kinzler
|
Zitat |
Registriert seit: 20. Jan 2006 Ort: Lübbecke 11.475 Beiträge Delphi 12 Athens |
#6
Ich bin mir nicht ganz sicher, ob er sich am ö stort, aber grundsätzlich sollte die Zeile komplilieren
Wenn es dann aber beim Programmlauf kein A.Nonsens oder eines der folgenden Unterelemente gibt, wird ein Fehler gemeldet. |
Zitat |
Registriert seit: 10. Jun 2003 Ort: Berlin 9.648 Beiträge Delphi 11 Alexandria |
#7
Ich bin mir nicht ganz sicher, ob er sich am ö stort, aber grundsätzlich sollte die Zeile komplilieren
Delphi-Quellcode:
var
鈀灞渤: Variant; begin 鈀灞渤.碑背椑北(22); In der Entwicklungsumgebung selber lautet die Fehlermeldung: Project xyz raised exception class EOleError with Message 'Methode 'Name' not supported by automation object.
tagname sollte aber immer verfügbar sein. Damit kannst du dann erst einmal schauen, ob das Tag passt und dann erst den Namen prüfen. Das sollte immer funktionieren.
Sebastian Jänicke
AppCentral |
Zitat |
Registriert seit: 16. Feb 2008 Ort: Baden-Württemberg 2.332 Beiträge Delphi 2007 Professional |
#8
In einem Variant kann auch ein IDispatch - Interface stecken.
Daher ist es ganz normal, dass der Compiler keine weiteren Prüfungen mehr vornimmt. Ein IDispatch Interface funktioniert so: zur Laufzeit fragt die Anwendung nach der Nummer der Methode / Property. Falls es die Methode / Property gibt wird in einem zweiten Schritt die Methode aufgerufen. Dies wird auch "late bindung" genannt, weil erst zur Laufzeit geprüft wird ob es die Methoden überhaupt gibt.
fork me on Github
|
Zitat |
Registriert seit: 28. Feb 2011 Ort: Mannheim 1.384 Beiträge Delphi 10.4 Sydney |
#9
Wie isses denn so?
Delphi-Quellcode:
procedure TForm1.FillForm(const FieldName, Value: string);
var I, J: Integer; Item, SubItem : Variant; begin try for I := 0 to WebBrowser1.OleObject.Document.Forms.Length - 1 do begin Item := WebBrowser1.OleObject.Document.Forms.Item(I); for J := 0 to Item.Length - 1 do begin SubItem := Item.Item(J); if SubItem.Name = FieldName then SubItem.Value := Value; end; end; except on E: Exception do ShowMessage('Fehler vom Typ: ' + E.ClassName + ', Meldung: ' + E.Message); end; end; |
Zitat |
Registriert seit: 16. Mär 2013 71 Beiträge Delphi 7 Professional |
#10
Hallo,
vielen Dank, vor allen Dingen an Bjoerk. Nein, das funktioniert leider auch nicht, d.h. es erzeugt die gleiche Fehlermeldung und das Programm stürzt so ab, daß ich erst die ganze IDE beenden und neu starten muß.
Zitat:
So, jetzt bin ich leicht verwirrt (Absturz [ ] Ja, [ ] Nein).
Es stürzt beispielsweise beim Aufruf der Seite http://www.swissdelphicenter.ch/en/addtip.php (um dort probehalber das Feld bei Homepage ausfülen zu lassen) niemals ab; ist zumindest bisher noch nie abgestürzt. Dagegen stürzt es beim Aufruf der Seite http://openpr.de/news/einstellen.html manchmal und beim Aufruf der Seite http://www.fair-news.de/pr_neu_2.php bzw. http://www.firmenpresse.de/pressemit...entlichen.html sehr häufig ab. Die letzteren Seiten biegen die Anfrage allerdings auf eine Login-Seite um. Das spielt allerdings keine Rolle. Auch wenn ich direkt auf die Loginseite verlinke, stüzt das Programm hin und wieder ab. Etwas was wirklich seltsam ist: Gehe ich zuerst auf http://www.swissdelphicenter.ch/en/addtip.php und erst dann auf die anderen Seiten, reduzieren sich die Abstürze deutlich.
Zitat:
Vielleicht gibst Du etwas Code oder (besser beides) eine URL dazu, die die Exception auslöst. Sonst können wir noch 'ne ganze Weile im Nebel stochern.
Also, hier der gesamte Sourcecode:
Delphi-Quellcode:
Für den Fall, daß es jemand selber ausprobieren will, habe ich die kompilierte Datei hochgeladen.
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls, ComCtrls, IniFiles, Buttons; type TForm1 = class(TForm) PageControl1: TPageControl; TabSheet1: TTabSheet; TabSheet2: TTabSheet; TabSheet3: TTabSheet; GroupBox1: TGroupBox; GroupBox2: TGroupBox; Button1: TButton; WebBrowser1: TWebBrowser; Label1: TLabel; Button2: TButton; GroupBox3: TGroupBox; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; EditName: TEdit; EditEmail: TEdit; EditTelefon: TEdit; EditAgentur: TEdit; EditFirma: TEdit; MemoKontaktdaten: TMemo; MemoPortrait: TMemo; EditUsername: TEdit; EditPassword: TEdit; Button16: TButton; Button17: TButton; Button18: TButton; Button19: TButton; GroupBox4: TGroupBox; EditTitel: TEdit; Label11: TLabel; Label12: TLabel; EditUntertitel: TEdit; Label13: TLabel; MemoTeaser: TMemo; Label14: TLabel; EditWebseite: TEdit; Label15: TLabel; MemoHaupttext: TMemo; GroupBox5: TGroupBox; Label16: TLabel; EditKey1: TEdit; Label17: TLabel; EditKey2: TEdit; Label18: TLabel; EditKey3: TEdit; Label19: TLabel; EditKey4: TEdit; Button23: TButton; Button24: TButton; MemoKeys: TMemo; Button26: TButton; Button27: TButton; Button28: TButton; Button29: TButton; Button30: TButton; Button31: TButton; Button32: TButton; Button33: TButton; Button34: TButton; OpenDialogAlles: TOpenDialog; SaveDialogAlles: TSaveDialog; OpenDialogEmail: TOpenDialog; SaveDialogEmail: TSaveDialog; ButtonDatenSpeichern: TButton; ButtonDatenLaden: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; EditVeroeffentlichungOrt: TEdit; Label20: TLabel; ComboBoxKategorie: TComboBox; LabelKategorie: TLabel; EditBild: TEdit; SpeedButton1: TSpeedButton; Label21: TLabel; EditBildunterschrift: TEdit; Label22: TLabel; Button8: TButton; Button9: TButton; Button10: TButton; Button11: TButton; GroupBox6: TGroupBox; Label23: TLabel; EditOpenPRUser: TEdit; EditOpenPRPass: TEdit; EditPRInsideUser: TEdit; EditPRInsidePass: TEdit; Label24: TLabel; Button12: TButton; Button13: TButton; Label25: TLabel; EditPremiumpresseUser: TEdit; EditPremiumpressePass: TEdit; Label26: TLabel; EditFairNewsUser: TEdit; EditFairNewsPass: TEdit; EditOffenesPPUser: TEdit; EditOffenesPPPass: TEdit; Label27: TLabel; Label28: TLabel; Label29: TLabel; Label30: TLabel; Label31: TLabel; Label32: TLabel; Label33: TLabel; EditNachrichtenNetUser: TEdit; EditNachrichtenNetPass: TEdit; EditFirmenpresseUser: TEdit; EditFirmenpressePass: TEdit; EditLivePRUser: TEdit; EditLivePRPass: TEdit; EditPresseINUser: TEdit; EditPresseINPass: TEdit; EditPresseWSUser: TEdit; EditPresseWSPass: TEdit; EditInarUser: TEdit; EditInarPass: TEdit; Button14: TButton; Button15: TButton; Button20: TButton; Button21: TButton; Button22: TButton; Button35: TButton; Button36: TButton; Button37: TButton; Button38: TButton; Button39: TButton; Button40: TButton; Label34: TLabel; EditnordPRUser: TEdit; EditnordPRPass: TEdit; Button41: TButton; Button42: TButton; Button43: TButton; Label35: TLabel; EditDailyNetUser: TEdit; EditDailyNetPass: TEdit; Button44: TButton; Button45: TButton; Label36: TLabel; EditPTextUser: TEdit; EditPTextPass: TEdit; Button46: TButton; Button47: TButton; EditOnlinepresseinfoUser: TEdit; EditOnlinepresseinfoPass: TEdit; Label37: TLabel; Button48: TButton; Button49: TButton; Label38: TLabel; EditOpenbroadcastUser: TEdit; EditOpenbroadcastPass: TEdit; Button50: TButton; Label39: TLabel; Label40: TLabel; StaticText1: TStaticText; Button51: TButton; EditFreiePMUser: TEdit; EditFreiePMPass: TEdit; Label41: TLabel; Button52: TButton; Label42: TLabel; Label43: TLabel; EditVorname: TEdit; EditPLZ: TEdit; EditOrt: TEdit; EditStrasse: TEdit; Label44: TLabel; EditNr: TEdit; Label45: TLabel; Label46: TLabel; procedure WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); procedure WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button34Click(Sender: TObject); procedure ButtonDatenSpeichernClick(Sender: TObject); procedure ButtonDatenLadenClick(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button16Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); procedure Button11Click(Sender: TObject); procedure Button39Click(Sender: TObject); procedure Button40Click(Sender: TObject); procedure Button42Click(Sender: TObject); procedure Button43Click(Sender: TObject); procedure Button45Click(Sender: TObject); procedure Button49Click(Sender: TObject); procedure Button47Click(Sender: TObject); procedure Button51Click(Sender: TObject); procedure MemoKontaktdatenClick(Sender: TObject); procedure MemoKeysClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; ini: TIniFile; PWert: Integer; implementation {$R *.dfm} function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean; var i, j: Integer; FormItem: Variant; begin Result := False; //no form on document if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then begin Exit; end; //count forms on document for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do begin FormItem := WebBrowser.OleObject.Document.forms.Item(I); for j := 0 to FormItem.Length - 1 do begin try //when the fieldname is found, try to fill out if FormItem.Item(j).Name = FieldName then begin FormItem.Item(j).Value := Value; Result := True; end; except Exit; end; end; end; end; procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); begin // Ab hier die Ausfüllfelder eintragen // Ausfüllfelder für Swissdelphicenter FillForm(WebBrowser1, 'homepage', 'http://www.swissdelphicenter.ch') ; FillForm(WebBrowser1, 'email', EditEmail.Text); FillForm(WebBrowser1, 'headline', EditTitel.Text); FillForm(WebBrowser1, 'name', EditVorname.Text + ' ' + EditName.Text) ; FillForm(WebBrowser1, 'agency', EditAgentur.Text) ; FillForm(WebBrowser1, 'tel', EditTelefon.Text) ; FillForm(WebBrowser1, 'firma', EditFirma.Text) ; FillForm(WebBrowser1, 'titel', EditTitel.Text) ; FillForm(WebBrowser1, 'text', MemoHaupttext.Text) ; FillForm(WebBrowser1, 'ccontact', MemoKontaktdaten.Text) ; FillForm(WebBrowser1, 'portrait', MemoPortrait.Text) ; FillForm(WebBrowser1, 'shorttext', MemoTeaser.Text); FillForm(WebBrowser1, 'maintext', MemoHaupttext.Text); FillForm(WebBrowser1, 'company', EditFirma.Text) ; FillForm(WebBrowser1, 'adress', MemoKontaktdaten.Text) ; FillForm(WebBrowser1, 'web', EditWebseite.Text) ; FillForm(WebBrowser1, 'person', EditVorname.Text + ' ' + EditName.Text) ; //PRInside FillForm(WebBrowser1, 'position', 'Pressesprecher(in)') ; //PRInsie FillForm(WebBrowser1, 'ftitle', EditTitel.Text) ; //Premiumpresse FillForm(WebBrowser1, 'fsubtitle', EditUntertitel.Text) ; //Premiumpresse FillForm(WebBrowser1, 'fcity', EditVeroeffentlichungOrt.Text) ; //Premiumpresse FillForm(WebBrowser1, 'feditor1', MemoHaupttext.Text) ; //Premiumpresse FillForm(WebBrowser1, 'fuserkw1', EditKey1.Text) ; //Pemiumpresse FillForm(WebBrowser1, 'fuserkw2', EditKey2.Text) ; //Premiumpresse FillForm(WebBrowser1, 'fuserkw3', EditKey3.Text) ; //Premiumpresse FillForm(WebBrowser1, 'link_zur_homepage', EditWebseite.Text) ; //FillForm(WebBrowser1, 'passwort', EditPassword.Text) ; FillForm(WebBrowser1, 'firma', EditFirma.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'vorname', EditVorname.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'nachname', EditName.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'stadt', EditOrt.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'email', EditEmail.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'telefon', EditTelefon.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'url', EditWebseite.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'titel', EditTitel.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'text', MemoHaupttext.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'firmenportrait', MemoPortrait.Text) ; //Offenes Presseportal FillForm(WebBrowser1, 'bild_titel', EditBildunterschrift.Text) ; FillForm(WebBrowser1, 'titel', EditTitel.Text) ; FillForm(WebBrowser1, 'subtitle', EditUntertitel.Text) ; FillForm(WebBrowser1, 'hauptinhalt', MemoHaupttext.Text) ; FillForm(WebBrowser1, 'pressekontakt', MemoKontaktdaten.Text) ; FillForm(WebBrowser1, 'profil', MemoPortrait.Text) ; FillForm(WebBrowser1, 'edit[titel]', EditTitel.Text) ; FillForm(WebBrowser1, 'edit[taxonomy][tags][2]', MemoKeys.Text) ; FillForm(WebBrowser1, 'edit[body]', MemoHaupttext.Text) ; FillForm(WebBrowser1, 'post_titel', EditTitel.Text) ; FillForm(WebBrowser1, 'content', MemoHaupttext.Text) ; //Firmenpresse //Zugangsdaten if PWert=4 then begin //Starte Weiche für Premiumpresse FillForm(WebBrowser1, 'fusername', EditPremiumpresseUser.Text) ; //Premiumpresse FillForm(WebBrowser1, 'fpassword', EditPremiumpressePass.Text) ; //Premiumpresse end //Ende Weiche für Premiumpresse else if PWert=5 then begin //Starte Weiche für Fair News FillForm(WebBrowser1, 'edit[name]', EditUsername.Text) ; FillForm(WebBrowser1, 'edit[pass]', EditPassword.Text) ; end else if PWert=3 then begin //Starte Weiche für PRInsie FillForm(WebBrowser1, 'password', EditPRInsidePass.Text) ; end else if PWert=7 then begin //Nachrichten.net FillForm(WebBrowser1, 'password', EditNachrichtenNetPass.Text) ; FillForm(WebBrowser1, 'username', EditNachrichtenNetUser.Text) ; end else if PWert=8 then begin //Firmenpresse FillForm(WebBrowser1, 'uname', EditFirmenpresseUser.Text) ; FillForm(WebBrowser1, 'pass', EditFirmenpressePass.Text) ; end; end; procedure TForm1.WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); begin if ProgressMax = 0 then begin label1.Caption := ''; Exit; end; try if (Progress <> -1) and (Progress <= ProgressMax) then label1.Caption := IntToStr((Progress * 100) div ProgressMax) + '% loaded...' else label1.Caption := ''; except on EDivByZero do Exit; end; end; procedure TForm1.Button1Click(Sender: TObject); begin Webbrowser1.Navigate('http://www.swissdelphicenter.ch/en/addtip.php'); PWert := 1; // Show the Titel of the currently active Webpage in the titlebar // Den Titel der aktuellen Webseite in der Titeleiste anzeigen // Caption := Webbrowser1.OleObject.Document.Title; end; procedure TForm1.Button2Click(Sender: TObject); begin PWert := 2; Webbrowser1.Navigate('http://openpr.de/news/einstellen.html'); end; procedure TForm1.Button34Click(Sender: TObject); begin PWert := 3; Webbrowser1.Navigate('http://www.pr-inside.com/de/release_new.htm'); end; procedure TForm1.ButtonDatenSpeichernClick(Sender: TObject); var ini: TIniFile; begin ini:=TIniFile.Create('./userdat.ini'); With ini do begin // Wenn das Formular geschlossen wird, werden diese Werte in die userdat.ini gespeichert WriteString('User1','Name',EditName.Text); WriteString('User1','Vorname',EditVorname.Text); WriteString('User1','Email',EditEmail.Text); WriteString('User1','Telefon',EditTelefon.Text); WriteString('User1','Agentur',EditAgentur.Text); WriteString('User1','Archiv',EditFirma.Text); WriteString('User1','Webseite',EditWebseite.Text); WriteString('User1','Username',EditUsername.Text); WriteString('User1','Password',EditPassword.Text); WriteString('User1','Strasse',EditStrasse.Text); WriteString('User1','Nr',EditNr.Text); WriteString('User1','PLZ',EditPLZ.Text); WriteString('User1','Ort',EditOrt.Text); WriteString('User1','OpenPRUser',EditOpenPRUser.Text); WriteString('User1','OpenPRPass',EditOpenPRPass.Text); WriteString('User1','PRInsideUser',EditPRInsideUser.Text); WriteString('User1','PRInsidePass',EditPRInsidePass.Text); WriteString('User1','PremiumpresseUser',EditPremiumpresseUser.Text); WriteString('User1','PremiumpressePass',EditPremiumpressePass.Text); WriteString('User1','FairNewsUser',EditFairNewsUser.Text); WriteString('User1','FairNewsPass',EditFairNewsPass.Text); WriteString('User1','OffenesPPUser',EditOffenesPPUser.Text); WriteString('User1','OffenesPPPass',EditOffenesPPPass.Text); WriteString('User1','NachrichtenNetUser',EditNachrichtenNetUser.Text); WriteString('User1','NachrichtenNetPass',EditNachrichtenNetPass.Text); WriteString('User1','FirmenpresseUser',EditFirmenpresseUser.Text); WriteString('User1','FirmenpressePass',EditFirmenpressePass.Text); WriteString('User1','LivePRUser',EditLivePRUser.Text); WriteString('User1','LivePRPass',EditLivePRPass.Text); WriteString('User1','PresseINUser',EditPresseINUser.Text); WriteString('User1','PresseINPass',EditPresseINPass.Text); WriteString('User1','PresseWSUser',EditPresseWSUser.Text); WriteString('User1','PresseWSPass',EditPresseWSPass.Text); WriteString('User1','InarUser',EditInarUser.Text); WriteString('User1','InarPass',EditInarPass.Text); WriteString('User1','nordPRUser',EditnordPRUser.Text); WriteString('User1','nordPRPass',EditnordPRPass.Text); WriteString('User1','DailyNetUser',EditDailyNetUser.Text); WriteString('User1','DailyNetPass',EditDailyNetPass.Text); WriteString('User1','PTextUser',EditPTextUser.Text); WriteString('User1','PTextPass',EditPTextPass.Text); WriteString('User1','OnlinepresseinfoUser',EditOnlinepresseinfoUser.Text); WriteString('User1','OnlinepresseinfoPass',EditOnlinepresseinfoPass.Text); WriteString('User1','OpenbroadcastUser',EditOpenbroadcastUser.Text); WriteString('User1','OpenbroadcastPass',EditOpenbroadcastPass.Text); WriteString('User1','FreiePMUser',EditFreiePMUser.Text); WriteString('User1','FreiePMPass',EditFreiePMPass.Text); //WriteLn('User1','Kontaktdaten',Memo1.Lines); //Wenn die Anwendung geschlossen wird, werden Fensterposition und Größe in die Ini geschrieben // WriteInteger('Position','Links',Left); // WriteInteger('Position','Oben',Top); // WriteInteger('Position','Rechts',Width); // WriteInteger('Position','Unten',Height); end; ini.Free end; procedure TForm1.ButtonDatenLadenClick(Sender: TObject); var ini: TIniFile; begin ini:=TIniFile.Create('./userdat.ini'); with ini do begin // Wenn die Anwendung gestartet wird, werden diese Daten aus der userdat.ini geschrieben EditName.Text:=ReadString ('User1','Name',''); EditVorname.Text:=ReadString ('User1','Vorname',''); EditEmail.Text:=ReadString ('User1','Email',''); EditTelefon.Text:=ReadString ('User1','Telefon',''); EditAgentur.Text:=ReadString ('User1','Agentur',''); EditFirma.Text:=ReadString ('User1','Archiv',''); EditWebseite.Text:=ReadString ('User1','Webseite',''); EditUsername.Text:=ReadString ('User1','Username',''); EditPassword.Text:=ReadString ('User1','Password',''); EditStrasse.Text:=ReadString ('User1','Strasse',''); EditNr.Text:=ReadString ('User1','Nr',''); EditPLZ.Text:=ReadString ('User1','PLZ',''); EditOrt.Text:=ReadString ('User1','Ort',''); EditOpenPRUser.Text:=ReadString ('User1','OpenPRUser',''); EditOpenPRPass.Text:=ReadString ('User1','OpenPRPass',''); EditPRInsideUser.Text:=ReadString ('User1','PRInsideUser',''); EditPRInsidePass.Text:=ReadString ('User1','PRInsidePass',''); EditPremiumpresseUser.Text:=ReadString ('User1','PremiumpresseUser',''); EditPremiumpressePass.Text:=ReadString ('User1','PremiumpressePass',''); EditFairNewsUser.Text:=ReadString ('User1','FairNewsUser',''); EditFairNewsPass.Text:=ReadString ('User1','EditFairNewsPass',''); EditOffenesPPUser.Text:=ReadString ('User1','OffenesPPUser',''); EditOffenesPPPass.Text:=ReadString ('User1','OffenesPPPass',''); EditNachrichtenNetUser.Text:=ReadString ('User1','NachrichtenNetUser',''); EditNachrichtenNetPass.Text:=ReadString ('User1','NachrichtenNetPass',''); EditFirmenpresseUser.Text:=ReadString ('User1','FirmenpresseUser',''); EditFirmenpressePass.Text:=ReadString ('User1','FirmenpressePass',''); EditLivePRUser.Text:=ReadString ('User1','LivePRUser',''); EditLivePRPass.Text:=ReadString ('User1','LivePRPass',''); EditPresseINUser.Text:=ReadString ('User1','PresseINUser',''); EditPresseINPass.Text:=ReadString ('User1','PresseINPass',''); EditPresseWSUser.Text:=ReadString ('User1','PresseWSUser',''); EditPresseWSPass.Text:=ReadString ('User1','PresseWSPass',''); EditInarUser.Text:=ReadString ('User1','InarUser',''); EditInarPass.Text:=ReadString ('User1','InarPass',''); EditnordPRUser.Text:=ReadString ('User1','nordPRUser',''); EditnordPRPass.Text:=ReadString ('User1','nordPRPass',''); EditDailyNetUser.Text:=ReadString ('User1','DailyNetUser',''); EditDailyNetPass.Text:=ReadString ('User1','DailyNetPass',''); EditPTextUser.Text:=ReadString ('User1','PTextUser',''); EditPTextPass.Text:=ReadString ('User1','PTextPass',''); EditOnlinepresseinfoUser.Text:=ReadString ('User1','OnlinepresseinfoUser',''); EditOnlinepresseinfoPass.Text:=ReadString ('User1','OnlinepresseinfoPass',''); EditOpenbroadcastUser.Text:=ReadString ('User1','OpenbroadcastUser',''); EditOpenbroadcastPass.Text:=ReadString ('User1','OpenbroadcastPass',''); EditFreiePMUser.Text:=ReadString ('User1','FreiePMUser',''); EditFreiePMPass.Text:=ReadString ('User1','FreiePMPass',''); // Memo1.Lines:=ReadString ('User1','Kontaktdaten',''); //Fensterposition vom letzten Programmende verwenden // Left := ReadInteger('Position','Links',Left); // Top := ReadInteger('Position','Oben',Top); // Width := ReadInteger('Position','Rechts',Width); // Height := ReadInteger('Position','Unten',Height); end; ini.Free; end; procedure TForm1.Button16Click(Sender: TObject); var Datei: TextFile; //text_datei: TextFile; text_zeilen: string; zeilen_num: Integer; begin if SaveDialogAlles.Execute then // MemoKontaktdaten.Lines.SaveToFile(SaveDialogAlles.FileName); // MemoPortrait.Lines.SaveToFile(SaveDialogAlles.FileName); AssignFile(Datei, SaveDialogAlles.FileName); Rewrite(Datei); WriteLn(Datei, EditName.Text); WriteLn(Datei,EditEmail.Text); WriteLn(Datei,EditTelefon.Text); WriteLn(Datei,EditAgentur.Text); WriteLn(Datei,EditFirma.Text); WriteLn(Datei,EditWebseite.Text); WriteLn(Datei,EditUsername.Text); WriteLn(Datei,EditPassword.Text); // WriteLn(Datei,MemoKontaktdaten.Lines.DelimitedText); // WriteLn(Datei,MemoPortrait.Lines.DelimitedText); //--------------Test---------------------- for zeilen_num := 0 to MemoKontaktdaten.Lines.Count -1 do begin //liest geänderte Zeilen in Variable text_zeilen := {IntToStr(zeilen_num) +} MemoKontaktdaten.Lines[zeilen_num]; //schreibt in Datei Zeile für Zeile WriteLn(datei,text_zeilen); end; //for end for zeilen_num := 0 to MemoPortrait.Lines.Count -1 do begin //liest geänderte Zeilen in Variable text_zeilen := {IntToStr(zeilen_num) +} MemoPortrait.Lines[zeilen_num]; //schreibt in Datei Zeile für Zeile WriteLn(datei,text_zeilen); end; //for end //------------Test Ende--------------------- CloseFile(Datei); end; procedure TForm1.Button6Click(Sender: TObject); begin PWert := 7; Webbrowser1.Navigate('http://www.nachrichten.net/news/create'); end; procedure TForm1.Button7Click(Sender: TObject); begin PWert := 8; Webbrowser1.Navigate('http://www.firmenpresse.de/pressemitteilung-veroeffentlichen.html'); end; procedure TForm1.Button8Click(Sender: TObject); begin PWert := 9; Webbrowser1.Navigate('http://www.live-pr.com/neue-pressemeldung.htm'); end; procedure TForm1.Button9Click(Sender: TObject); begin PWert := 10; Webbrowser1.Navigate('http://www.pressemitteilung.in/node/add/pressemeldung'); end; procedure TForm1.Button10Click(Sender: TObject); begin PWert := 11; Webbrowser1.Navigate('http://pressemitteilung.ws/node/add/story'); end; procedure TForm1.Button11Click(Sender: TObject); begin PWert := 12; Webbrowser1.Navigate('http://www.inar.de/wp-admin/post-new.php'); end; procedure TForm1.Button39Click(Sender: TObject); begin PWert := 13; Webbrowser1.Navigate('http://www.presse-kostenlos.de/press.exe?new=true'); end; procedure TForm1.Button40Click(Sender: TObject); begin PWert := 14; Webbrowser1.Navigate('http://www.nordpr.de/form/presseartikel-kostenlos-einstellen.html'); end; procedure TForm1.Button42Click(Sender: TObject); begin PWert := 15; Webbrowser1.Navigate('http://www.pressekat.de/index.php?_B=pm-erstellen-neul'); end; procedure TForm1.Button43Click(Sender: TObject); begin PWert := 16; Webbrowser1.Navigate('http://www.dailynet.de/anmeldung_pm.php'); end; procedure TForm1.Button45Click(Sender: TObject); begin PWert := 17; Webbrowser1.Navigate('http://www.ptext.de/user'); end; procedure TForm1.Button49Click(Sender: TObject); begin PWert := 19; Webbrowser1.Navigate('http://www.openbroadcast.de/publish.html'); end; procedure TForm1.Button47Click(Sender: TObject); begin PWert := 18; Webbrowser1.Navigate('http://www.onlinepresse.info/user/'); end; procedure TForm1.Button51Click(Sender: TObject); begin PWert := 20; Webbrowser1.Navigate('http://www.freie-pressemitteilungen.de/modules.php?name=Your_Account'); end; procedure TForm1.Button3Click(Sender: TObject); begin PWert := 4; Webbrowser1.Navigate('http://www.premiumpresse.de/seite/pressemitteilung-erstellen/'); end; procedure TForm1.Button4Click(Sender: TObject); begin PWert := 5; Webbrowser1.Navigate('http://www.fair-news.de/pr_neu_2.php'); end; procedure TForm1.Button5Click(Sender: TObject); begin PWert := 6; Webbrowser1.Navigate('http://www.offenes-presseportal.de/artikel-schreiben.htm'); end; procedure TForm1.MemoKontaktdatenClick(Sender: TObject); begin MemoKontaktdaten.Text := EditVorname.Text + ' ' + EditName.Text + #13#10 + EditEmail.Text + #13#10 + EditStrasse.Text + ' ' + EditNr.Text + #13#10 + EditPLZ.Text + ' ' + EditOrt.Text + #13#10 + 'Telefon: ' + EditTelefon.Text ; end; procedure TForm1.MemoKeysClick(Sender: TObject); begin MemoKeys.Text := EditKey1.Text + ', ' + EditKey2.Text + ', ' + EditKey3.Text + ', ' + EditKey4.Text ; end; end. Grüße Erutan
Holger
|
Zitat |
Ansicht |
Linear-Darstellung |
Zur Hybrid-Darstellung wechseln |
Zur Baum-Darstellung wechseln |
ForumregelnEs 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
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
LinkBack URL |
About LinkBacks |