Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi CreateOLEObject('Word.Application') überschreibt Temp-Ordner (https://www.delphipraxis.net/99468-createoleobject-word-application-ueberschreibt-temp-ordner.html)

smudo 12. Sep 2007 15:27


CreateOLEObject('Word.Application') überschreibt Temp-Ordner
 
Hallo,

ich hab ne Weile gebraucht, um hinter dieses "Feature" von Word 2007 zu kommen:
Beim Erstellen des Word-COM-Objektes mit CreateOLEObject('Word.Application') wird der gesamte Temp-Ordner C:\Temp überschrieben. Falls man dort also Dateien ablegt, die man, so wie ich, danach im Word laden wollte, sind die Dateien nach diesem Schritt verschwunden.
Kennt jemand das Problem? Warum ist das so und was kann man dagegen tun?

René

mkinzler 12. Sep 2007 15:34

Re: CreateOLEObject('Word.Application') überschreibt Temp-Or
 
Nix im Temp-Ordner ablegen :mrgreen:

smudo 12. Sep 2007 15:46

Re: CreateOLEObject('Word.Application') überschreibt Temp-Or
 
:lol: Habs gewusst. Bei meiner Fragestellung musste das die erste Antwort sein. Ich befürchte, das bleibt wohl auch die Letzte.

mkinzler 12. Sep 2007 15:48

Re: CreateOLEObject('Word.Application') überschreibt Temp-Or
 
Ich hab kein Word2007. Bin aber der Meinung, daß es nicht besonders sinnvoll ist, daß bei der Erzeugung eines COM-Objektes der Temp-Ordner gelöscht wird. werden auch Unterverzeichnisse gelöscht?

smudo 12. Sep 2007 16:54

Re: CreateOLEObject('Word.Application') überschreibt Temp-Or
 
Alles komplett. Wenn kein Temp-Ordner vorhanden ist, wird ein neuer erstellt.
Ich habs erst auch nicht geglaubt, aber nach mehreren Tests unter Zeugen... :zwinker:

Christian Seehase 12. Sep 2007 16:58

Re: CreateOLEObject('Word.Application') überschreibt Temp-Or
 
Moin Smudo,

also bei mir sind Office 2003 und 2007 parallel installiert.
Wenn ich das CreateOLEObject('Word.Application') ausführe, bleibt der Inhalt des Temp-Ordners erhalten.
Das gilt auch, wenn ich es auf CreateOLEObject('Word.Application.12') abändere, um gezielt das Word 2007 anzusprechen.
Leider weiss ich jetzt nicht sicher, ob ich jeweils auch die richtige Version anspreche.
Wenn Du (oder jemand anderes natürlich auch) sagen kannst, wie ich das prüfen kann, werd' ich das auch noch einmal tun.

DelphiFan aus München 20. Jul 2010 18:15

AW: CreateOLEObject('Word.Application') überschreibt Temp-Ordner
 
also bei mir passiert das definitiv nicht (Office 2007, Windows 7:

Delphi-Quellcode:
var
  M : Variant;

begin
  try
    M:=CreateOleObject('Word.Application');
    FWord:=M.Application;
  finally
    VarClear(M);
  end;
  if WithVisible
    then FWord.Visible:=true;
end;
)

Was passiert wenn man Schreibschutz setzt ??

sx2008 20. Jul 2010 18:27

AW: CreateOLEObject('Word.Application') überschreibt Temp-Ordner
 
Wird die orginal Vorlagendatei *.dot benützt oder wurde evtl. eine veränderte Standardvorlage über das Firmennetz untergeschoben?

himitsu 20. Jul 2010 18:34

AW: CreateOLEObject('Word.Application') überschreibt Temp-Ordner
 
C:\Temp ?
wie wäre es, wenn du stattdessen den "normalen" offiziellen Tempordner nimmst?
(oder habt ihr den Tempordner da hinverschoben :shock: )


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:15 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