Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- unit uROBOTERDOKUTOOL;
- {$mode objfpc}{$H+}
- interface
- uses
- Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
- ComCtrls, Buttons, Zipper, ComObj, lclproc;
- type
- { TMainForm }
- TMainForm = class(TForm)
- bButtonSearch: TButton;
- bbDokumentationErstellen: TBitBtn;
- bStammverzeichnisWahl: TButton;
- bGeneriereKukaKoadn: TButton;
- bErstelleScreenshots: TButton;
- bAusgabeVerzeichnisWahl: TButton;
- bWVA: TButton;
- bVorlagenverzeichnisWahl: TButton;
- cbVorlageAuswahl: TComboBox;
- eEditFeldAusgabeOrdner: TEdit;
- eEditFeldORDNER: TEdit;
- eEditFeldOrdnerVorlage: TEdit;
- gbQUELLDATEN: TGroupBox;
- gbLASTDATEN: TGroupBox;
- gbVorlage: TGroupBox;
- gbAusgabe: TGroupBox;
- lbROBOTERLISTE: TListBox;
- lLastdatenErklaerung2: TLabel;
- lLastdatenErklaerung: TLabel;
- ProgressBar1: TProgressBar;
- SelectDirectoryDialogAusgabe: TSelectDirectoryDialog;
- SelectDirectoryDialogVorlage: TSelectDirectoryDialog;
- SelectDirectoryDialogStammverzeichnis: TSelectDirectoryDialog;
- procedure bAusgabeVerzeichnisWahlClick(Sender: TObject);
- procedure bbDokumentationErstellenClick(Sender: TObject);
- procedure bButtonSearchClick(Sender: TObject);
- procedure bErstelleScreenshotsClick(Sender: TObject);
- procedure bGeneriereKukaKoadnClick(Sender: TObject);
- procedure bStammverzeichnisWahlClick(Sender: TObject);
- procedure bWVAClick(Sender: TObject);
- procedure bVorlagenverzeichnisWahlClick(Sender: TObject);
- private
- { private declarations }
- public
- { public declarations }
- end;
- var
- MainForm: TMainForm;
- stammverzeichnis: string;
- varWdApp: oleVariant; // Reserviert Speicher für die Programmsteuerung
- varDokument: oleVariant; // Reserviert Speicher für die Steuerung des Worddokuments
- implementation
- {$R *.lfm}
- { TMainForm }
- procedure ListeZIPs(Pfad: string; DateiListe: TStrings);
- var
- SR: TSearchRec;
- begin
- if FindFirst(Pfad + '\' + '*.zip', faAnyFile, SR) = 0 then
- begin
- repeat
- if (SR.Attr <> faDirectory) then
- begin
- DateiListe.Add(SR.Name);
- end;
- until FindNext(SR) <> 0;
- FindClose(SR);
- end;
- end;
- procedure ListeVorlagen(Pfad2: string; VorlagenListe: TStrings);
- var
- SR: TSearchRec;
- begin
- if FindFirst(Pfad2 + '\' + '*.doc*', faAnyFile, SR) = 0 then
- begin
- repeat
- if (SR.Attr <> faDirectory) then
- begin
- VorlagenListe.Add(SR.Name);
- end;
- until FindNext(SR) <> 0;
- FindClose(SR);
- end;
- end;
- procedure TMainForm.bGeneriereKukaKoadnClick(Sender: TObject);
- begin
- SysUtils.ExecuteProcess(UTF8ToSys('"C:\Program Files (x86)\Kuka Roboter GmbH\Kuka.Load 5\Bin\KukaLoadGUI.exe"'), '', []);
- end;
- procedure TMainForm.bStammverzeichnisWahlClick(Sender: TObject);
- begin
- if SelectDirectoryDialogStammverzeichnis.execute then
- begin
- eEditFeldORDNER.Caption:='"' + SelectDirectoryDialogStammverzeichnis.FileName + '" wurde als Stammverzeichnis gewählt';
- lbROBOTERLISTE.Items.Clear;
- ListeZIPs(SelectDirectoryDialogStammverzeichnis.FileName, lbROBOTERLISTE.Items);
- end;
- end;
- procedure TMainForm.bWVAClick(Sender: TObject);
- begin
- try
- varWdApp := CreateOleObject('Word.Application'); // erstellt das Wordobjekt
- except
- WriteLn('MS Word kann nicht gestartet werden.'); // Fehlerbehandlung
- end;
- try
- ShowMessage(varWdApp.Version);
- except
- end;
- end;
- procedure TMainForm.bVorlagenverzeichnisWahlClick(Sender: TObject);
- begin
- if SelectDirectoryDialogVorlage.execute then
- begin
- eEditFeldOrdnerVorlage.Caption:='"' + SelectDirectoryDialogVorlage.FileName + '" wurde als Vorlageverzeichnis gewählt';
- cbVorlageAuswahl.Items.Clear;
- ListeVorlagen(SelectDirectoryDialogVorlage.FileName, cbVorlageAuswahl.Items);
- end;
- end;
- procedure TMainForm.bErstelleScreenshotsClick(Sender: TObject);
- begin
- SysUtils.ExecuteProcess(UTF8ToSys('C:\Windows\System32\SnippingTool.exe'), '', []);
- end;
- procedure TMainForm.bButtonSearchClick(Sender: TObject);
- begin
- lbROBOTERLISTE.Items.Clear;
- ListeZIPs(SelectDirectoryDialogStammverzeichnis.FileName, lbROBOTERLISTE.Items);
- end;
- procedure TMainForm.bAusgabeVerzeichnisWahlClick(Sender: TObject);
- begin
- if SelectDirectoryDialogAusgabe.execute then
- begin
- eEditFeldAusgabeOrdner.Caption:='"' + SelectDirectoryDialogAusgabe.FileName + '" wurde als Ausgabeverzeichnis gewählt';
- end;
- end;
- procedure TMainForm.bbDokumentationErstellenClick(Sender: TObject);
- var
- UnZippen: TUnZipper;
- i: integer;
- j: string;
- lbROBOTERLISTEstrings: TStrings;
- begin
- //Erstellen der geforderten Verzeichnisstruktur
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Backups');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Lastdaten');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Profinet');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/RefListen');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Temp');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Topologie');
- CreateDir(SelectDirectoryDialogAusgabe.FileName + '/Vorlage');
- //Entpacken der Dateien
- UnZippen := TUnZipper.Create;
- try
- UnZippen.FileName := SelectDirectoryDialogStammverzeichnis.FileName + '/' + lbROBOTERLISTE.Items.Strings [lbROBOTERLISTE.ItemIndex ] ;
- UnZippen.OutputPath := SelectDirectoryDialogAusgabe.FileName + '/Temp/' + lbROBOTERLISTE.Items.Strings [lbROBOTERLISTE.ItemIndex ] ;
- UnZippen.Examine;
- UnZippen.UnZipAllFiles;
- finally
- UnZippen.Free;
- end;
- //Word initialisieren
- try
- varWdApp := CreateOleObject('Word.Application'); // erstellt das Wordobjekt
- except
- ShowMessage('MS Word kann nicht gestartet werden. Ist es installieret?'); // Fehlerbehandlung
- end;
- end;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement