Newsgroup: it.comp.appl.access
Titolo: Stampe PDF con Access

Devo fare un programma che mi crei dei file PDF dai report Access per
mandarli via mail. Per il report no problem, ho poi trovato su alcuni siti
internet degli script che mi permettono di cambiare la stampante e lanciare
la stampa direttamente sulla stampante PDF per creare i file. In realtà però
questa procedura non funziona correttamente. Non so se però il problema è
dato dal fatto che ho W2k Pro e Access 2k con il programma Adobe 4.0 per i
PDF.
Spero che qualcuno riesca a darmi una mano...
grazie ciao

 ha scritto nel messaggio
news:a8bsf9$r4oev$1...@ID-138694.news.dfncis.de...

dal Win Nt in su, quindi 2k e xp
devi lavorare col registro di configurazione
utilizzando la variabile PDFFILENAME (mi sembra) che usavi
nel file win.ini.
bye :o)

infatti ho modificato il file win.ini ma il programma non funziona, hai
qualche esempio di codice da darmi per capire come fare???
grazie
"Enrico T.S." <WlaRom...@Hotmail.com> ha scritto nel messaggio
news:nupq8.111277$1S3.3...@twister1.libero.it...


 wrote in message
news:a8bsf9$r4oev$1...@ID-138694.news.dfncis.de...

io l'ho fatto...
mi funziona sia con acrobat 4 che 5
uso access 97 su nt4, w2k e w98
l'unica cosa che non riesco a fare è settare la protezione dei pdf da codice
(porca trottola!)

 ha scritto nel messaggio
news:a8elqo$ase$1...@fe1.cs.interbusiness.it...



t posto il codice
servono in aggiunta le funzioni per cambiare la default printer (sitocomune)
e le funzioni per accedere al registro dei files xlz di acrobat 4 (io almeno
le ho pescate lì...)
il codice che uso è questo:
occhio che adesso funzia solo su win9x
(vedi commenti!)
Public Function PrintPDFFile(InputReport As String, outputFileName As
String, RepFilter As String, RepWhere As String)
    Dim iniFilename As String
    Dim IniPromptSetting As String
    Dim SystemRoot$
    Dim PDFPrinterName As String
    Dim Predefinita As String
    'salvo subito il nome della stampante predefinita
    Predefinita = GetDefaultPrinter()
On Error GoTo PDFError
    'ci sono alcuni passaggi in cui ho bisogno del solo nome della
stampante, e non del percorso completo
    'preferisco salvarlo in una variabile apposta, dato che ne ho bisogno +
d una volta
    PDFPrinterName = FindPrinter("PDFWriter", True)
    'qui devo controllare il sistema operativo
    'Dim NomePC As String
    'NomePC = fOSMachineName
    'If NomePC = "nt01" Then
        'sistema NT-Like
    '    SystemRoot$ = GetPrivateProfileSetting(BaseKey:=HKEY_LOCAL_MACHINE,
Section:="Software\Microsoft\Windows NT\CurrentVersion",
Setting:="SystemRoot")
    '    iniFilename = SystemRoot$ + "\System32\Spool\Drivers\W32X86\"
    '    iniFilename = iniFilename + "2\__pdf.ini"
    'Else
        'sistema 9x-Like
        SystemRoot$ = GetPrivateProfileSetting(BaseKey:=HKEY_LOCAL_MACHINE,
Section:="Software\Microsoft\Windows\CurrentVersion", Setting:="SystemRoot")
        iniFilename = SystemRoot$ + "\System\PDFWritr.ini"
    'End If
    'qui vengono impostati alcuni parametri relativi al file PDF che verrà
generato
    SetPrivateProfileSetting iniFilename, 0, PDFPrinterName, "bExecViewer",
"0"
    SetPrivateProfileSetting iniFilename, 0, PDFPrinterName, "bDocInfo", "0"
    SetPrivateProfileSetting iniFilename, 0, PDFPrinterName, "PDFFileName",
outputFileName
    SetDefaultPrinter (FindPrinter("PDFWriter"))
    DoCmd.OpenReport InputReport, acViewNormal, RepFilter, RepWhere
PDFEsci:
    SetDefaultPrinter (Predefinita)
    'qui resetto in modo che mi chieda sempre il nome file
    SetPrivateProfileSetting iniFilename, 0, PDFPrinterName, "PDFFileName",
"C:\Temp"
    Exit Function
PDFError:
    MsgBox Err.Number & vbCrLf & Err.description
    Resume PDFEsci
End Function

 dell'acrobat o in una sottocartella. Prova a cambiare qualche
proverò a guardare.
grazie della dritta

 ha scritto nel messaggio
news:wmes8.9$m41...@twister2.libero.it...
