PDA

Vollständige Version anzeigen : AP-Druckmanager


Nockenwelle
29.05.2001, 20:17
Hallo,

ich hab' ein Problem mit den Manager. Wenn ich einen Bericht öffne, in dem ich dessen Programme nutze erhalte ich immer die Meldung 'zu wenig Arbeitasspeicher'.
Ich habe noch recht viel Code in meiner DB. Ich hab' den Verdacht, der Verweis auf den AP-Druckmanager beißt sich mit anderen Programmen. z. b. Setdefaultprinter von Ken Getz

Der Code sieht folgendermaßen aus:


Global Const Drucker1 = "HP Laserjet 8100 DN PS"
Global Const Drucker2 = "Acrobat PDFWriter"

Global Const Archiv = "k:\Sicherung MFK"

Private Sub Berichtskopf_Print(Cancel As Integer, PrintCount As Integer)
On Error GoTo err_Berichtskopf_Print

Dim Retcode As String
Dim rst As Recordset
Dim dbs As Database
Dim sdrucker As String
Dim sVerz As String
Dim sDAdei As String
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("aktuelleCharge")
sdrucker = AktivenDruckerErmitteln

If sdrucker = Drucker1 Then
Retcode = DruckerAktivSetzen(Drucker2)

Retcode = PDFDateisetzen(Archiv & rst!aktCharge & "\" & rst!aktCharge _
& Me.Name & ".pdf")
Else
Retcode = DruckerAktivSetzen(Drucker1)
End If

exit_Berichtskopf_Print:
Retcode = PDFDateisetzen("")
If Not rst Is Nothing Then rst.Close: Set rst = Nothing
If Not rst Is Nothing Then dbs.Close: Set dbs = Nothing

Exit Sub
err_Berichtskopf_Print:
Retcode = MsgBox("Fehler Nr. " & Err.Number & vbCr & Err.Description)
Resume exit_Berichtskopf_Print


End Sub


Es soll halt zweimal gedruckt werden. Einmal aufs Papier und einmal zur archivierung in ein PDF-File. Das geht soweit auch.

Vielleicht wißt Ihr ja was. Vielleicht hab' ich hier irgendwo noch mehr, was ich entrümpeln muss:-)

Cu

PS: Natürlich werde ich den AP-Druckmanager Lizensieren. Aber die leidige Meldung muß weg.

Günther Kramer
29.05.2001, 20:49
Hallo Nockenwelle,

welche Accessversion, welches Servicepack für Office, welchen Stand der JetEngine, welches Betriebssystem und welches Servicepack des Betriebssystems hast du.

Wenn du schreibst, dass eine Meldung bzgl. zu wenig Arbeitsspeicher kommt, ist das nicht sehr aussagekräftig.

Als Hersteller des AP-Druck-Managers kann ich dir anbieten, dass du mir das Programm Setdefaultprinter von Ken Getz zur Verfügung stellst, sofern damit keine Lizenzrechte verletzt werden. Ich schau mir die Zusammenarbeit beider Programme einmal an.
Wozu brauchst du denn das Programm "Setdefaultprinter" ?

Nockenwelle
30.05.2001, 12:24
Hallo Günther,

A97, NT SP 6a, Office 97 Professionel SP2b(Version 4.72.3110.0 vom 30.9.99).
Die A97 Installation ist vollständig durchgeführt worden.
Vielleicht hat sich im Laufe der Zeit mein Office-Paket zerschossen. Mal probieren.

Wozu brauchst du denn das Programm "Setdefaultprinter" ?
. Es macht das gleiche, wie DruckerAktivSetzen. Bei mvps hab' ich mir das mal besorgt. Ich habe es gerade aus allen Modulen entfernt. Nutzt aber nix(Also falscher Alarm)

Das die Meldung nicht sehr Aussagekräftig ist, ist mir klar. Sie sagt mir auch nichts.
Die Vollständige Meldung lautet:

Es ist nicht genügend Arbeitsspeicher verfügbar, um die Anzeige zu aktuallisieren. Schließen Sie nicht benötigte Programme, bevor Sie den Vorgang erneut versuchen.

Man hat dann noch die Möglichkeit OK zu drücken. Die Meldung wiederholt sich dann nach ca. einer Minute noch mal, auch wenn man gar nichts macht.

Bei 256 MB Hauptspeicher sagt einem das wirklich nicht viel(von denen 150 MB frei sind, zudem ist meine Auslagerungsdatei auf 1GB gesetzt).

Folgende Verweise habe ich gesetzt

Visual Basic for Applications
Microsoft Access 8.0 Object Library
Microsoft DAO 3.51 Object Library
AP-Druck-Manager

Ich habe mir jetzt einen der Berichte (12 Seiten) mit den dazugehörigen Tabellen (eigentlich nur die Verknüpfungen, die DB hat eine einzige Tabelle mit exakt einem Feld und einer Zeile, um zu speichern was zuletzt bearbeitet wurde). und Modulen in eine leere DB kopiert.
Der gleiche Effekt. Die anderen Module wurden nicht ausgeführt. Ich brauche Sie nur, um alle Module zu Kompilieren, damit der Bericht vollständig startet.
Es sind keine recorsets oder DB'n geöffnet.

Cu