Deklaration: Declare Function GlobalLock Lib "kernel32.dll" (ByVal hMem As Long) As Long
Beispiel: Private Declare Function PrintDlg Lib "comdlg32.dll" _ Alias "PrintDlgA" ( _ pPrintdlg As PRINTDLG_TYPE) As Long Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long Private Declare Sub MoveMemory Lib "kernel32" _ Alias "RtlMoveMemory" ( _ Destination As Any, _ Source As Any, _ ByVal Length As Long) Private Declare Function GlobalLock Lib "kernel32.dll" (ByVal hMem As Long) As Long Private Declare Function GlobalAlloc Lib "kernel32.dll" ( _ ByVal wFlags As Long, _ ByVal dwBytes As Long) As Long Private Declare Function GlobalUnlock Lib "kernel32.dll" (ByVal hMem As Long) As Long Private Declare Function GlobalFree Lib "kernel32.dll" (ByVal hMem As Long) As Long Private Type PRINTDLG_TYPE lStructSize As Long hwndOwner As Long hDevMode As Long hDevNames As Long hdc As Long flags As Long nFromPage As Integer nToPage As Integer nMinPage As Integer nMaxPage As Integer nCopies As Integer hInstance As Long lCustData As Long lpfnPrintHook As Long lpfnSetupHook As Long lpPrintTemplateName As String lpSetupTemplateName As String hPrintTemplate As Long hSetupTemplate As Long End Type Private Type DEVNAMES wDriverOffset As Integer wDeviceOffset As Integer wOutputOffset As Integer wDefault As Integer extra As String * 100 End Type Private Type DEVMODE dmDeviceName As String * 32 dmSpecVersion As Integer dmDriverVersion As Integer dmSize As Integer dmDriverExtra As Integer dmFields As Long dmOrientation As Integer dmPaperSize As Integer dmPaperLength As Integer dmPaperWidth As Integer dmScale As Integer dmCopies As Integer dmDefaultSource As Integer dmPrintQuality As Integer dmColor As Integer dmDuplex As Integer dmYResolution As Integer dmTTOption As Integer dmCollate As Integer dmFormName As String * 32 dmUnusedPadding As Integer dmBitsPerPixel As Integer dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As Long dmICMMethod As Long dmICMIntent As Long dmMediaType As Long dmDitherType As Long dmReserved1 As Long dmReserved2 As Long ' der folgende Abschnitt ist nur für Windows 2000 relevant dmPanningWidth As Long dmPanningHeight As Long End Type ' PRINTDLG_TYPE flags-Konstanten Private Const PD_ALLPAGES = &H0 ' selektiert den "Alle Seiten"-OptionButton Private Const PD_COLLATE = &H10 ' selektiert die "Sortieren"-Checkbox Private Const PD_DISABLEPRINTTOFILE = &H80000 ' "In Datei Drucken" deaktivieren Private Const PD_ENABLEPRINTHOOK = &H1000 ' Hook-Prozedur soll benutzt werden Private Const PD_ENABLEPRINTTEMPLATE = &H4000 ' benutzt Template-Namen Private Const PD_ENABLEPRINTTEMPLATEHANDLE = &H10000 ' benutzt Template-Handles Private Const PD_ENABLESETUPHOOK = &H2000 ' benutzt eine Hook-Prozedur für den Setup-Dialog Private Const PD_ENABLESETUPTEMPLATE = &H8000 ' benutzt einen Template-Namen für den ' Setup-Dialog Private Const PD_ENABLESETUPTEMPLATEHANDLE = &H20000 ' benutzt ein Template-Handle ' für den Setup-Dialog Private Const PD_HIDEPRINTTOFILE = &H100000 ' "In Datei Drucken"-Button verstecken Private Const PD_NONETWORKBUTTON = &H200000 ' Netzwerk-Button verstecken Private Const PD_NOPAGENUMS = &H8 ' "Von Bis" ist deaktiviert Private Const PD_NOSELECTION = &H4 ' "Auswahl" ist deaktiviert Private Const PD_NOWARNING = &H80 ' keine Warnungen, wenn der gewählte Drucker nicht ' der Standarddrucker ist Private Const PD_PAGENUMS = &H2 ' selektiert den "Von Bis"-OptionButton Private Const PD_PRINTSETUP = &H40 ' öffnet den Drucker-Setup-Dialog Private Const PD_PRINTTOFILE = &H20 ' selektiert die "In Datei Drucken"-Checkbox Private Const PD_RETURNDC = &H100 ' gibt einen Device-Kontext des Druckers zurück Private Const PD_RETURNDEFAULT = &H400 ' lädt den Standarddrucker, dazu müssen bei ' hDevMode und hDevNames eine "0" übergeben werden Private Const PD_RETURNIC = &H200 ' gibt einen Informations-Kontext zu dem gewählten ' Drucker als hDC zurück Private Const PD_SELECTION = &H1 ' selektiert die "Auswahl"-Option Private Const PD_SHOWHELP = &H800 ' zeigt den Hilfe-Button an Private Const PD_USEDEVMODECOPIESANDCOLLATE = &H40000 ' berücksichtigt ' Geräteeinschränkungen und gibt nur mögliche Werte der Kopien oder des Sortierens zurück ' DEVMODE dmFields-Konstanten Private Const DM_ORIENTATION = &H1 ' dmOrientation wird gefüllt/gelesen Private Const DM_PAPERSIZE = &H2 ' dmPaperSize wird gefüllt/gelesen Private Const DM_PAPERLENGTH = &H4 ' dmPaperLenght wird gefüllt/gelesen Private Const DM_PAPERWIDTH = &H8 ' dmPaperWidth wird gefüllt/gelesen Private Const DM_SCALE = &H10 ' dmScale wird gefüllt/gelesen Private Const DM_COPIES = &H100 ' dmCopies wird gefüllt/gelesen Private Const DM_DEFAULTSOURCE = &H200 ' dmDefaultSource wird gefüllt/gelesen Private Const DM_PRINTQUALITY = &H400 ' dmPrintQuality wird gefüllt/gelesen Private Const DM_COLOR = &H800 ' dmColor wird gefüllt/gelesen Private Const DM_DUPLEX = &H1000 ' dmDuplex wird gefüllt/gelesen Private Const DM_YRESOLUTION = &H2000 ' dmYResolution wird gefüllt/gelesen Private Const DM_TTOPTION = &H4000 ' dmTTOption wird gefüllt/gelesen Private Const DM_COLLATE = &H8000 ' dmCollate wird gefüllt/gelesen Private Const DM_FORMNAME = &H10000 ' dmFormName wird gefüllt/gelesen Private Const DM_LOGPIXELS = &H20000 ' dmLogPixels wird gefüllt/gelesen Private Const DM_BITSPERPEL = &H40000 ' dmBitsPerPixel wird gefüllt/gelesen Private Const DM_PELSWIDTH = &H80000 ' dmPelsWidth wird gefüllt/gelesen Private Const DM_PELSHEIGHT = &H100000 ' dmPelsHeight wird gefüllt/gelesen Private Const DM_DISPLAYFLAGS = &H200000 ' dmDisplayFlags wird gefüllt/gelesen Private Const DM_DISPLAYFREQUENCY = &H400000 ' dmDisplayFrequency wird gefüllt/gelesen Private Const DM_ICMMETHOD = &H800000 ' dmICMMethod wird gefüllt/gelesen Private Const DM_ICMINTENT = &H1000000 ' dmICMIntent wird gefüllt/gelesen Private Const DM_MEDIATYPE = &H2000000 ' dmMediaType wird gefüllt/gelesen Private Const DM_DITHERTYPE = &H4000000 ' dmDitherType wird gefüllt/gelesen Private Const DM_PANNINGWIDTH = &H20000000 ' dmPanningWidth wird gefüllt/gelesen Private Const DM_PANNINGHEIGHT = &H40000000 ' dmPanningHeight wird gefüllt/gelesen ' DEVMODE dmOrientation-Konstanten Private Const DMORIENT_PORTRAIT = 1 ' Portrait wurde gewählt (vertikal drucken) Private Const DMORIENT_LANDSCAPE = 2 ' Landscape wurde gewählt (horizontal drucken) ' DEVMODE dmPaperSize-Konstanten Private Const DMPAPER_LETTER = 1 ' Blatt 8,5 x 11 Inch Private Const DMPAPER_LEGAL = 5 ' Blatt 8,5 x 14 Inch Private Const DMPAPER_10X11 = 45 ' 10 x 11 Inch Private Const DMPAPER_10X14 = 16 ' 10 x 14 Inch Private Const DMPAPER_11X17 = 17 ' 11 x 17 Inch Private Const DMPAPER_15X11 = 46 ' 15 x 11 Inch Private Const DMPAPER_9X11 = 44 ' 9 x 11 Inch Private Const DMPAPER_A_PLUS = 57 ' A Plus Blatt Private Const DMPAPER_A2 = 66 ' DIN A2 Blatt Private Const DMPAPER_A3 = 8 ' DIN A3 Blatt Private Const DMPAPER_A3_EXTRA = 63 ' DIN A3 Extra Blatt Private Const DMPAPER_A3_EXTRA_TRANSVERSE = 68 ' DIN A3 Extra Blatt querlaufend Private Const DMPAPER_A3_TRANSVERSE = 67 ' DIN A3 Blatt querlaufend Private Const DMPAPER_A4 = 9 ' DIN A4 Blatt Private Const DMPAPER_A4_EXTRA = 53 ' DIN A4 Extra Blatt Private Const DMPAPER_A4_PLUS = 60 ' DIN A4 Plus Blatt Private Const DMPAPER_A4_TRANSVERSE = 55 ' DIN A4 querlaufend Private Const DMPAPER_A4SMALL = 10 ' DIN A4 klein (210 x 297 Millimeter) Blatt Private Const DMPAPER_A5 = 11 ' DIN A5 Blatt Private Const DMPAPER_A5_EXTRA = 64 ' DIN A5 Extra Blatt Private Const DMPAPER_A5_TRANSVERSE = 61 ' DIN A5 querlaufend Private Const DMPAPER_B_PLUS = 58 ' B Plus Blatt Private Const DMPAPER_B4 = 12 ' B4 Blatt Private Const DMPAPER_B5 = 13 ' B5 Blatt Private Const DMPAPER_B5_EXTRA = 65 ' B5 Extra Blatt Private Const DMPAPER_B5_TRANSVERSE = 62 ' B5 Blatt querlaufend Private Const DMPAPER_CSHEET = 24 ' C Blatt (17 x 22 Inch) Private Const DMPAPER_DSHEET = 25 ' D Blatt (22x34 Inch) Private Const DMPAPER_ENV_10 = 20 ' Briefumschlag 10 (4,125 x 9,5 Inch) Private Const DMPAPER_ENV_11 = 21 ' Briefumschlag 11 (4,5 x 10,375 Inch) Private Const DMPAPER_ENV_12 = 22 ' Briefumschlag 12 (4,75 x 11 Inch) Private Const DMPAPER_ENV_14 = 23 ' Briefumschlag 14 (5 x 11,5 Inch) Private Const DMPAPER_ENV_9 = 19 ' Briefumschlag 9 (3,875 x 8,875 Inch) Private Const DMPAPER_ENV_B4 = 33 ' Briefumschlag B4 (250 x 353 Millimeter) Private Const DMPAPER_ENV_B5 = 34 ' Briefumschlag B5 (176 x 250 Millimeter) Private Const DMPAPER_ENV_B6 = 35 ' Briefumschlag B6 (176 x 125 Millimeter) Private Const DMPAPER_ENV_C3 = 29 ' Briefumschlag C3 (324 x 458 Millimeter) Private Const DMPAPER_ENV_C4 = 30 ' Briefumschlag C4 (229 x 324 Millimeter) Private Const DMPAPER_ENV_C5 = 28 ' Briefumschlag C5 (162 x 229 Millimeter) Private Const DMPAPER_ENV_C6 = 31 ' Briefumschlag C6 (114 x 162 Millimeter) Private Const DMPAPER_ENV_C65 = 32 ' Briefumschlag 10 (4,125 x 9,5 Inch) Private Const DMPAPER_ENV_DL = 27 ' Briefumschlag 10 (4,125 x 9,5 Inch) Private Const DMPAPER_ENV_INVITE = 47 ' Einladungs-Briefumschlag Private Const DMPAPER_ENV_ITALY = 36 ' Italienischer Briefumschlag (110 x 230 Millimeter) Private Const DMPAPER_ENV_MONARCH = 37 ' Monarchischer Briefumschlag (3,875 x 7,5 Inch) Private Const DMPAPER_ENV_PERSONAL = 38 ' Persönlicher Briefumschlag (3,625 x 6,5 Inch) Private Const DMPAPER_ESHEET = 26 ' E Blatt (34 x 44 Inch) Private Const DMPAPER_EXECUTIVE = 7 ' Executive Blatt (7.25 x 10,5 Inch) Private Const DMPAPER_FANFOLD_LGL_GERMAN = 41 ' Deutscher Rechtlicher Fanfold (8,5 x ' 13 Inch) Private Const DMPAPER_FANFOLD_STD_GERMAN = 40 ' Deutscher Standard Fanfold (8,5 x 12 Inch) Private Const DMPAPER_FANFOLD_US = 39 ' US Standard Fanfold (14,875 + 11 Inch) Private Const DMPAPER_FIRST = 1 ' Blatt 8,5 x 11 Inch Private Const DMPAPER_FOLIO = 14 ' Folin 8,5 + 13 Inch Private Const DMPAPER_ISO_B4 = 42 ' ISO B4 Blatt Private Const DMPAPER_JAPANESE_POSTCARD = 43 ' Japanische Postkarte Private Const DMPAPER_LAST = 41 ' Deutscher Rechtlicher Fanfold (8,5 x 13 Inch) Private Const DMPAPER_LEDGER = 4 ' Ledger (17x11 Inch) Private Const DMPAPER_LEGAL_EXTRA = 51 ' Rechtlich Extra Private Const DMPAPER_LETTER_EXTRA = 50 ' Blatt Extra Private Const DMPAPER_LETTER_EXTRA_TRANSVERSE = 56 ' Blatt Extra querlaufend Private Const DMPAPER_LETTER_PLUS = 59 ' Blatt Plus Private Const DMPAPER_LETTER_TRANSVERSE = 54 ' Blatt querlaufend Private Const DMPAPER_LETTERSMALL = 2 ' Blatt klein (8,5 x 11 Inch) Private Const DMPAPER_NOTE = 18 ' Note Blatt (8,5 x 11 Inch) Private Const DMPAPER_QUARTO = 15 ' Quarto Blatt (215 x 275 Millimeter) Private Const DMPAPER_STATEMENT = 6 ' Statement Blatt (5,5 x 8,5 Inch) Private Const DMPAPER_TABLOID = 3 ' Tabloid Blatt (11 x 17 Inch) Private Const DMPAPER_TABLOID_EXTRA = 52 ' Tabloid Extra Blatt Private Const DMPAPER_USER = 256 ' benutzerdefinierte Größe ' DEVMODE dmDefaultSource-Konstanten Private Const DMBIN_ONLYONE = 1 ' Nur ein Blatt Private Const DMBIN_UPPER = 1 ' Behälter Oben Private Const DMBIN_LOWER = 2 ' Behälter Unten Private Const DMBIN_MIDDLE = 3 ' Behälter Mitte Private Const DMBIN_MANUAL = 4 ' Behälter mit manueller Füllung Private Const DMBIN_ENVELOPE = 5 ' Briefumschlag Behälter Private Const DMBIN_ENVMANUAL = 6 ' Briefumschlag Behälter mit manueller Füllung Private Const DMBIN_AUTO = 7 ' Automatisches füllen Private Const DMBIN_TRACTOR = 8 ' Blatt Einzug Private Const DMBIN_SMALLFMT = 9 ' kleines Format laden Private Const DMBIN_LARGEFMT = 10 ' großes Format laden Private Const DMBIN_LARGECAPACITY = 11 ' Große Kapazität Private Const DMBIN_CASSETTE = 14 ' Blatt Kassette Private Const DMBIN_FORMSOURCE = 15 ' Form Papier Quelle ' DEVMODE dmPrintQuality-Konstanten Private Const DMRES_DRAFT = -1 ' Entwurf Private Const DMRES_LOW = -2 ' niedrig Private Const DMRES_MEDIUM = -3 ' mittel Private Const DMRES_HIGH = -4 ' hoch ' DEVMODE dmColor-Konstanten Private Const DMCOLOR_MONOCHROME = 1 ' Gerät unterstützt keine Schwarzweißausgabe Private Const DMCOLOR_COLOR = 2 ' Gerät unterstützt keine Farbausgabe ' DEVMODE dmDuplex-Konstanten Private Const DMDUP_SIMPLEX = 1 ' einseitiges Drucken Private Const DMDUP_VERTICAL = 2 ' beidseitig drucken bei vertikalem Seitenwechsel Private Const DMDUP_HORIZONTAL = 3 ' beidseitig drucken bei Horizontalem Seitenwechsel ' DEVMODE dmTTOption-Konstanten Private Const DMTT_BITMAP = 1 ' druckt TrueType-Fonts als Grafiken Private Const DMTT_DOWNLOAD = 2 ' druckt Downloaded TrueType-Fonts als Soft-Fonts Private Const DMTT_SUBDEV = 4 ' druckt Geräte-Fonts statt TrueType-Fonts ' DEVMODE dmCollate-Konstanten Private Const DMCOLLATE_FALSE = 0 ' Drucker kann keine Seiten sortieren Private Const DMCOLLATE_TRUE = 1 ' Drucker kann Seiten sortieren ' DEVMODE dmDisplayFlags-Konstanten Private Const DM_GRAYSCALE = 1 ' Gerät unterstützt keine Farben, Grautöne werden unterstützt Private Const DM_INTERLACED = 2 ' Gerät unterstützt Farben ' DEVMODE dmICMMethod-Konstanten Private Const DMICMMETHOD_NONE = 1 ' ICM ist abgeschaltet Private Const DMICMMETHOD_SYSTEM = 2 ' ICM wird von Windows gesteuert Private Const DMICMMETHOD_DRIVER = 3 ' ICM wird vom Treiber gesteuert Private Const DMICMMETHOD_DEVICE = 4 ' ICM wird vom Gerät gesteuert ' DEVMODE dmICMIntent-Konstanten Private Const DMICM_SATURATE = 1 ' Sättigung wird optimiert Private Const DMICM_CONTRAST = 2 ' Kontrast wird optimiert Private Const DMICM_COLORMETRIC = 3 ' exakte Farben ' DEVMODE dmMediaType-Konstanten Private Const DMMEDIA_STANDARD = 1 ' Standardpapier Private Const DMMEDIA_GLOSSY = 2 ' Fotopapier Private Const DMMEDIA_TRANSPARECNY = 3 ' Folie ' DEVMODE dmDitherType-Konstanten Private Const DMDITHER_NONE = 1 ' Kein Dithering Private Const DMDITHER_COARSE = 2 ' Dithering mit grobem Brush Private Const DMDITHER_FINE = 3 ' Dithering mit feinem Brush Private Const DMDITHER_LINEART = 4 ' Linien mit schwarz, weiß und grau Private Const DMDITHER_GRAYSCALE = 5 ' Grauskala ' GlobalAlloc wFlags-Konstanten Private Const GHND = &H40 ' Kombination von GMEM_MOVEABLE mit GMEM_ZEROINIT Private Const GMEM_DDESHARE = &H2000 ' optimiert den Speicher mit der DDE Private Const GMEM_DISCARDABLE = &H100 ' Speicher kann überschrieben werden, kann ' nicht mit GMEM_FIXED kombiniert werden Private Const GMEM_FIXED = &H0 ' fixiert den Speicher und die Funktion gibt einen ' Pointer zurück Private Const GMEM_MOVEABLE = &H2 ' der Speicher ist beweglich Private Const GMEM_NOCOMPACT = &H10 ' Speicher wird nicht minimiert oder andere ' Blöcke für ihn überschrieben Private Const GMEM_NODISCARD = &H20 ' überschreibt keine überschreibbaren Blöcke um ' den Speicher zu reservieren Private Const GMEM_ZEROINIT = &H40 ' initialisiert den Inhalt des Speicherblocks bei ' 0 Private Const GPTR = &H42 ' kombiniert GMEM_FIXED und GEMEM_ZEROINIT ' zeigt einen voreingestellten Drucker-Dialog an und wertet diesen aus Private Sub Command1_Click() Dim RetVal As Long Dim hMemMode As Long, pMemMode As Long Dim hMemName As Long, pMemName As Long Dim PD As PRINTDLG_TYPE, Dev_Mode As DEVMODE, Dev_Names As DEVNAMES ' Drucker festlegen, der standardmäßig ausgewählt sein soll With Dev_Mode .dmSize = Len(Dev_Mode) .dmDeviceName = Printer.DeviceName .dmFields = DM_PRINTQUALITY End With ' Speicherblock erstellen und Dev_Mode hineinkopieren hMemMode = GlobalAlloc(GMEM_MOVEABLE Or GMEM_ZEROINIT, Len(Dev_Mode)) _ ' Speicherblock erstellen pMemMode = GlobalLock(hMemMode) ' Speicherblock sperren und Pointer ermitteln MoveMemory ByVal pMemMode, Dev_Mode, Len(Dev_Mode) ' Struktur in den ' Speicherblock kopieren GlobalUnlock hMemMode ' Speicherblock entsperren ' Drucker-Eigenschaften zur Überprüfung festlegen With Dev_Names .wDriverOffset = Len(Printer.DriverName) .wDeviceOffset = .wDriverOffset + 1 + Len(Printer.DriverName) .wOutputOffset = .wDeviceOffset + 1 + Len(Printer.Port) .extra = Printer.DriverName & vbNullChar & Printer.DeviceName & _ vbNullChar & Printer.Port & vbNullChar End With ' Speicherblock erstellen und Dev_Names hineinkopieren hMemName = GlobalAlloc(GMEM_MOVEABLE Or GMEM_ZEROINIT, Len(Dev_Names)) _ ' Speicherblock erstellen pMemName = GlobalLock(hMemName) ' Speicherblock sperren und Pointer ermitteln MoveMemory ByVal pMemName, Dev_Names, Len(Dev_Names) ' Struktur in den ' Speicherblock kopieren GlobalUnlock hMemName ' Speicherblock entsperren ' Dialog-Eigenschaften setzen With PD .hInstance = App.hInstance .hwndOwner = Me.hWnd .lStructSize = Len(PD) .hDevMode = hMemMode .hDevNames = hMemName .flags = PD_DISABLEPRINTTOFILE Or PD_RETURNDC Or PD_ALLPAGES Or _ PD_PAGENUMS Or PD_USEDEVMODECOPIESANDCOLLATE .nFromPage = 1 .nToPage = 15 .nMinPage = 1 .nMaxPage = 15 End With ' Dialog aufrufen RetVal = PrintDlg(PD) If RetVal = 0 Then MsgBox "Es ist ein Fehler aufgetreten oder sie haben auf Abbrechen _ gedrückt.", vbInformation, "Aufrufen des Dialoges" GlobalFree PD.hDevMode ' Speicherblock zerstören GlobalFree PD.hDevNames ' Speicherblock zerstören Exit Sub End If ' Dev_Mode wieder aus dem Speicherblock in die Struktur kopieren und ' Speicherblock zerstören pMemMode = GlobalLock(PD.hDevMode) ' Speicherblock sperren MoveMemory Dev_Mode, ByVal pMemMode, Len(Dev_Mode) ' Daten aus dem ' Speicherblock in die Struktur kopieren GlobalUnlock PD.hDevMode ' Speicherblock entsperren GlobalFree PD.hDevMode ' Speicherblock zerstören ' Dev_Names wieder aus dem Speicherblock in die Struktur kopieren und ' Speicherblock zerstören pMemName = GlobalLock(PD.hDevNames) ' Speicherblock sperren MoveMemory Dev_Names, ByVal pMemName, Len(Dev_Names) ' Daten aus dem ' Speicherblock in die Struktur kopieren GlobalUnlock PD.hDevNames ' Speicherblock entsperren GlobalFree PD.hDevNames ' Speicherblock zerstören ' ermittelte Daten auswerten Debug.Print "Gewählter Drucker: " & Dev_Mode.dmDeviceName Debug.Print "zu Druckende Seiten: " & PD.nFromPage & " bis " & PD.nToPage Debug.Print "Anzahl Kopien: " & Dev_Mode.dmCopies Debug.Print "Sortieren: " & CStr(CBool(Dev_Mode.dmCollate)) If CBool(Dev_Mode.dmPrintQuality And DMRES_HIGH) = True Then Debug.Print "Druck Qualität: Hoch" ElseIf CBool(Dev_Mode.dmPrintQuality And DMRES_MEDIUM) = True Then Debug.Print "Druck Qualität: Mittel" ElseIf CBool(Dev_Mode.dmPrintQuality And DMRES_LOW) = True Then Debug.Print "Druck Qualität: Niedrig" ElseIf CBool(Dev_Mode.dmPrintQuality And DMRES_DRAFT) = True Then Debug.Print "Druck Qualität: Entwurf" End If Debug.Print "- - - - - - - - - - - - " ' Device-Kontext freigeben DeleteObject PD.hdc End Sub Diese Seite wurde bereits 12.277 mal aufgerufen. |
sevAniGif (VB/VBA) Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Buchempfehlung Tipp des Monats Oktober 2024 Heinz Prelle Firewall-Status unter WinXP/Vista prüfen Das Beispiel prüft, ob die Firewall unter Windows XP/Vista eingeschaltet ist oder nicht. Zudem wird eine Abfrage durchgeführt ob es sich bei dem zugrundeliegenden Betriebssystem um Windows XP/Vista handelt oder nicht. Access-Tools Vol.1 Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |