AGB  ·  Datenschutz  ·  Impressum  







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

mit Delphi Faxen über Fritz-Box

Ein Thema von luisk · begonnen am 7. Nov 2012 · letzter Beitrag vom 8. Nov 2012
 
katjah

Registriert seit: 6. Aug 2006
Ort: Herborn
28 Beiträge
 
#4

AW: mit Delphi Faxen über Fritz-Box

  Alt 7. Nov 2012, 21:04
Hi,

ich habe sowas vor ewigen Zeiten mal gemacht. Mit ok bestätigen muss ich da nichts, es öffnet sich lediglich das FritzFax-Übersichtsfenster.
Hier der Auszug aus dem Code:
Block1:
Delphi-Quellcode:
  
  regist:=TRegistry.Create;
  regist.rootkey:=HKEY_CURRENT_USER;
  regist.openkey('SOFTWARE\AVM\Fritz! 2.0\Fritz!',true);
  //bei true wird Schlüssel erzeugt, wenn er noch nicht existiert
  regist.writestring('SendMergePath',''); // Stand mal auf : C:\Dokumente und Einstellungen\"UserName"\Lokale Einstellungen\Anwendungsdaten\FRITZ!\Tmp00000
  regist.CloseKey;
  regist.free;
Block2:
Delphi-Quellcode:
function StartFritzFax:boolean;
var WindowHandle : THandle;
    WindowName : String;
    i : integer;
begin
  WindowName:='FRITZ!fax';
  WindowHandle := FindAWindow(WindowName, '');
  result:=false;
  if WindowHandle<>0 then
    result:=true
  else
  begin
    OpenProgram(Application.handle,'FriFax32','');
    i:=0;
    repeat
      WindowHandle := FindAWindow(WindowName, '');
      inc(i);
      if WindowHandle=0 then
        Sleep(1000)
      else
      begin
        result:=true;
        SendMessage(WindowHandle, WM_SYSCOMMAND, SC_MINIMIZE, 0)
      end;
    until (WindowHandle<>0) or (i>5);
  end;
end;
Block3:
Delphi-Quellcode:
  
  DocName:='Name des Dokuments';
  regist:=TRegistry.Create;
  regist.rootkey:=HKEY_CURRENT_USER;
  regist.openkey('\Software\VB and VBA Program Settings\FRITZ!fax\Print',true);
  //bei true wird Schlüssel erzeugt, wenn er noch nicht existiert
  regist.writestring(DocName,FaxNr);
  regist.openkey('\Software\VB and VBA Program Settings\FRITZ!fax\SendTime',true);

// Zeitversetzt senden
  if (rgSend.ItemIndex=1) or
     ((SendDateTime<>0) and (FaxSpinEdit1.Value>0)) then
  begin
    SendDateTimeX:=DateTimeToStr(SendDateTime);
    regist.writestring(DocName,SendDateTimeX);
    if FaxSpinEdit1.Value>0 then
      SendDateTime:=IncMinute(SendDateTime,FaxSpinEdit1.Value);
  end;
  regist.free;
  printer.Title:=DocName;
  Printer.BeginDoc;
  DoPrint; //eigentlicher Druck
  Printer.EndDoc;
  sleep(1000);
Ich habe das aus meinem Code rausgezogen und hoffentlich alle relevanten Teile erwischt. Die Blöcke werden in der Reihenfolge ausgeführt, Block3 ggf. mehrfach. Ich hoffe, das hilft Dir weiter.
Gruß Katja
  Mit Zitat antworten Zitat
 


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 19:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz