Français
Forum

Druckvorschau MS-Word

 

Normann
Strübli
Salut,

j'ai justement avec cela angefangen un kleines Programme trop écrivons
welches Meßwerte dans un vorgegebenes Protokoll écrivons soll.
là cela protokoll quelque chose komplizierter Aussieht
(avec tabellen, Grafiken, Fußnoten etc.) habe je mich entschlossen cela Protokoll dans MS-Word (2002) trop erstellen anstatt es Aufwendig irgendwie
avec Profan trop realisieren :roll:
Um chaque Cordes et Werte eh bien à qui richtige position im
Dokument trop bekommen hat chaque champ une eindeutigen Namen -z.B: |1202. qui .doc-Dossier wird eh bien avec Profan ouvert et qui Feldnamen avec den gewünschten Zeichenketten ersetzt - Voila! Klappt super
maintenant mais zum Problem:

là cela Prüfprotokoll un wichtiges Dokument ist voudrais je es avant
Changements/ Fälschung protéger. la première mesure qui qui pour
getroffen habe ist qui Checksumme qui modifié .doc Dossier trop ermitteln et auszudrucken. So peux si nötig festgestellt volonté
si quelque chose dans dem Dokument geändert wurde. Allerdings suis je avec qui Solution encore pas entier zufrieden.
Ist es alors possible dans Word direct qui Druckvorschau anzuzeigen - ou bien encore besser cela Dokument auszudrucken sans Word magasin trop doit? peut-être. via kommandozeilen-paramètre? Habe malheureusement im Netz et dans qui Word- hilfe nix en supplément trouvé - mais peut-être sais ici oui zufällig jmd. quelque chose par-dessus.

gruß
Normann
 
26.01.2005  
 



Aus oui c'est ca diesem Grunde empfehle je dir [...] 

là fais Du Votre Vorlagen im Format .sdc - et une shellexec imprimer anweisung läßt cela OOffice Drucken comment un le bébé - sans lästige informer.

cherche la fois ici dans qui Community pour binprint - glaube je hatte Schonmal ne Inc gebastelt pour quelle je selbst Nutze um verschiedene Clients übers Netzwerk drucken laisser trop peut - et alles im Nachhinein aussi encore Nachvollziebar bleibt.

Salve, iF
 
26.01.2005  
 




Normann
Strübli
merci iF pour qui schnelle Antwort - werd mich la fois wohl la fois avec OpenOffice beschäftigen doit mais avec Word werd je quand même weitertüfteln.
de qui était nochmal qui Présentation un fremdes Programme im eigenen Profanfenster auszuführen- sozusagen einzufangen. peux mich seulement encore très dunkel daran erinnern...
Nebenbei find je es toll comment Du qui Community wieder aufgebaut la hâte, on fühlt sich encore entier comment Zuhause
 
26.01.2005  
 




Jörg
Sellmeyer
allô Normann,
Eigentlich müßtest Du avec ShellExec(Document.doc,Imprimer,0) Word unsichtbar starten peut um cela Dokument direct auszudrucken.
Salut
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
26.01.2005  
 



@Norman: merci

@Jörg: malheureusement ca va so avec word pas - là sonst peut-être sogar qui PrinterDialog pas angezeigt serait.

cela Problem avec word ist arrêt simple cela avant dem Ausdruck un PrinterDialog venez - chez OO ist ca arrêt pas qui le cas. et là viele Firmen une Lizensverwaltung eingeführt avons - ist on avec OO sur qui sicheren page.

Salve, iF
 
27.01.2005  
 




Normann
Strübli
qui Vorschlag de Jörg ist funktioniert mais -si Word aussi pas unsichtbar gestartet wird, so wird cela Dokument à den Drucker gesandt et Word anschließend wieder geschlossen.
Abgesehen en doit je es zumindest pour Word encore besser lösen - si on la fois pas avec dem Standarddrucker drucken veux - la fois gucken.

gruß
Normann
 
27.01.2005  
 



ah vraie? Lol je hatte es avec OfficeXP probiert et là kam toujours qui lästige PrinterDLG. Sag doch - quelle Word-Version utilise Du?

Salve, iF
 
28.01.2005  
 




Jörg
Sellmeyer
allô Normann,
de Sebastian König gibts une OleFile.prf. Sieht assez klompiziert aus,
abervielleicht peux Du quoi avec cela anfangen.
KompilierenMarqueSéparation
+-----------------------------------------------------------------------+
| olefile.prf - Dateien öffnen und schließen mit OLE                    |
| Autor: Sebastian König                                                |
| email: feedback@sekoenig.de                                           |
| Homepage: http://www.sekoenig.de                                      |
| Copyright ©2001 Sebastian König                                       |
|                                                                       |
| Dieser Quellcode zeigt, wie man mit OLE und Profan² ein Word-Dokument |
| zum Bearbeiten öffnet.                                                |
|                                                                       |
|                                                                       |
| WICHTIG: Dieser Quellcode funktioniert erst ab Profan 7.0 und setzt   |
|          voraus, dass Microsoft® Word installiert ist.                |
|                                                                       |
| TIP(P):  Diese Methode funktioniert nicht nur mit Word-Dokumenten.    |
|          Wenn man die Dateimaske zum Beispiel in *.bmp ändert, wird   |
|          automatisch Paint (oder ein anderes Zeichenprogramm)         |
|          geöffnet.                                                    |
|                                                                       |
+-----------------------------------------------------------------------+
---Prozeduren

proc Release

    parameters obj&
    declare vptr&
    let vptr& = @long(obj&,0)
    return Call(@long(vptr&,8),obj&)

endproc

+++
---Benötigte (COM/OLE)-API-Funktionen:
DEF OleInitialize(1) !"OLE32","OleInitialize"
DEF OleUninitialize(0) !"OLE32","OleUninitialize"
DEF IIDFromString(2) !"OLE32","IIDFromString"
DEF CoTaskMemAlloc(1) !"OLE32","CoTaskMemAlloc"
DEF CoTaskMemFree(1) !"OLE32","CoTaskMemFree"
DEF CreateILockBytesOnHGlobal(3) !"OLE32","CreateILockBytesOnHGlobal"
DEF StgCreateDocfileOnILockBytes(4) !"OLE32","StgCreateDocfileOnILockBytes"
DEF OleCreateFromFile(8) !"OLE32","OleCreateFromFile"
DEF MultiByteToWideChar(6) !"KERNEL32","MultiByteToWideChar"
DEF Sleep(1) !"KERNEL32","Sleep"
---Variablen deklarieren:
declare ILockBytes&,IStorage&,IOleClientSite&,IRichEditOle&,MSWord&,IUnknown&
declare vp_MSWord&,vp_RTFOle&
declare CLSID_MSWord&,IID_IOleObject&,IID_IOleClientSite&,IID_IUnknown&
declare clsid$,iid$,olestr&
declare file$,file&
declare FORMATETC#,RECT#,MSG#
declare count&
---Speicher allokieren:
let ILockBytes& = CoTaskMemAlloc(4)
let IStorage& = CoTaskMemAlloc(4)
let MSWord& = CoTaskMemAlloc(4)
let IID_IOleObject& = CoTaskMemAlloc(16)
let olestr& = CoTaskMemAlloc(256)
let file& = CoTaskMemAlloc(1024)
dim FORMATETC#,20
---Neues Fenster erstellen:
windowtitle "OLE mit Profan²"
window 100,100-640,480
---OLE initialisieren:
print "OleInitialize:",OleInitialize(0),"
"
---Storage-Objekt erstellen:
print "CreateILockBytesOnHGlobal:",CreateILockBytesOnHGlobal(0,1,Addr(ILockBytes&)),"
"
print "StgCreateDocfileOnILockBytes:",StgCreateDocfileOnILockBytes(ILockBytes&,$1012,0,Addr(IStorage&)),"
"
---MSWord-Objekt erstellen:
--IID für IOleObject aus String bilden:
let iid$ = "{00000112-0000-0000-C000-000000000046}"
MultiByteToWideChar(0,0,Addr(iid$),Len(iid$),olestr&,261),"
"
print "IIDFromString:",IIDFromString(olestr&,IID_IOleObject&),"
"
--Datei wählen
let file$ = LoadFile$("Word-Dokumente","*.doc")
MultiByteToWideChar(0,0,Addr(file$),Len(file$),file&,261),"
"
--FORMATETC# füllen...
long FORMATETC#,0  = 0
long FORMATETC#,4  = 0
long FORMATETC#,8  = 1 DVASPECT_CONTENT
long FORMATETC#,12 = 0
long FORMATETC#,16 = 0 TYMED_NULL
--Objekt erstellen:
print "OleCreateFromFile:",OleCreateFromFile(0,file&,IID_IOleObject&,0,FORMATETC#,0,IStorage&,Addr(MSWord&)),"
"
--vptr ermitteln:
let vp_MSWord& = @long(MSWord&,0)
MessageBox("Die Datei wird nun geöffnet und in ca. 5 Sekunden
automatisch wieder geschlossen.","Meldung",64)
---Objekt zum Bearbeiten öffnen:
print "MSWord&->DoVerb:",Call(@long(vp_MSWord&,44),MSWord&,-1,0,0,0,%hwnd,0)
---5 Sekunden warten, ohne den Prozess zu blockieren:
let count& = @add(&GetTickCount,5000)

while @lt(&GetTickCount,count&)

    Sleep(0)

wend

---Objekt wieder schließen:
print "MSWord&->Close:",Call(@long(vp_MSWord&,24),MSWord&,0)
print " "
print "> Taste oder Mausklick zum Beenden! <"
waitinput
---Aufräumarbeiten:
Release MSWord&
Release IStorage&
Release ILockBytes&
CoTaskMemFree(ILockBytes&)
CoTaskMemFree(IStorage&)
CoTaskMemFree(MSWord&)
CoTaskMemFree(CLSID_MSWord&)
CoTaskMemFree(IID_IOleObject&)
CoTaskMemFree(olestr&)
dispose FORMATETC#
OleUninitialize()
---./../funktionsreferenzen/XProfan/ende/'>Ende:
end

Salut
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
28.01.2005  
 




Normann
Strübli
[quote-part:efc5161f7d]quelle Word-Version utilise Du?[/quote-part:efc5161f7d]
hab gar ne...aucune Word
peux cela seulement im Büro testen et voilà office Xp installiert, hmm...

cela Beispiel de Sebastian doit je seulement encore aufarbeiten -ou bien besser dit comprendre, stürzt aussi malheureusement avec einer Exeption EAccessVioaltion ab.
 
28.01.2005  
 




CB
Hi, Normann!

Meintest Du folgenden Link?

[...] 

je suis Je ne entier sûrement, si es c'est, quoi Du erreichen veux, mais peut-être hilft Dir folgendes plus:

j'ai Dir un kleines Word-Makro gebastelt (Ver 97, courir devrait es sur jeden le cas son jusqu'à incl. Word XP - höher hab je pas )
quoi diesem Makro encore fehlt, ist qui Abfrage, si qui Ausdruck déjà fertig ist, weil sich Word sonst möglicherweise beschwert, qui es finissez volonté soll, wos doch avec dem Drucken encore pas fertig ist!

NewMakros.txt débaptiser dans *.bas.
VisualBasic-Editor ouvrir - Dossier importieren - Link zur .bas - Editor sortir de - Sauver (pas oublier qc!) - testen avec irgendeinem doc.
prochaine Schritt: Du erstellst Dir une Présentation (SinnvollerName.dot) et stellst cet Makro dorthinein (Makros - organiser - kopieren)

Pour dem Schema aus meinem Link peux Du ensuite aus Deinem Profan-Programme heraus Word starten - une Makro automatisch effectuer laisser (DruckenStdBeenden) et Word wird automatisch wieder geschlossen (Application.Quit machts possible).
encore un Tip: (pas ausprobiert): WinExec(Wait) peux Du comme paramètre den Abbildungsmodus transfert - peut-être druckt Word aussi minimiert (Modus 2)?

il y a encore une Possibilité: exposition la fois sous den Unités im Forum pour:
Michael Dell hat là une Deco.inc veröffentlicht zum Codieren et Decodieren - peut-être peux Dus brauchen (bevor Du quoi à Word envoies..).

Solltest Du Probleme avons avec meinem Beispielcode - je suis (presque) jeden journée online...

Christian

1 kB
Hochgeladen:28.01.2005
Downloadcounter77
Download
 
XProfan 8/9.1, Win XP, AMD 64/3200
28.01.2005  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

5.064 Views

Untitledvor 0 min.
Torben Nissen27.01.2021
Normann Strübli23.10.2020
Stephan Sonneborn21.07.2019
Georg Teles08.07.2019
plus...

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie