Benutzen Sie auch das WebBrowser-Control um HTML-Dokumente in Ihrer Anwendung anzuzeigen? Dann hat es Sie doch sicherlich auch schon des öfteren gestört, dass beim Ausdruck immer die im Internet Explorer unter "Seite einrichten" voreingestellten Kopf- und Fußzeilen ausgegeben werden. Durch einen kleinen Eingriff in die Windows-Registry können Sie die Kopf- / Fußzeilen aber auch mal eben schnell ausschalten bzw. eigene Texte verwenden. Der besagte Eintrag befindet sich in der Registry unter "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\PageSetup" in den Schlüsselwerten "footer" und "header". Gehen wir das Ganze also an. Für den Registry-Zugriff werden folgende API-Deklarationen benötigt: Option Explicit ' API-Deklarationen Private Declare Function RegOpenKeyEx Lib "advapi32.dll" _ Alias "RegOpenKeyExA" ( _ ByVal hKey As Long, _ ByVal lpSubKey As String, _ ByVal ulOptions As Long, _ ByVal samDesired As Long, _ phkResult As Long) As Long Private Declare Function RegQueryValueEx Lib "advapi32.dll" _ Alias "RegQueryValueExA" ( _ ByVal hKey As Long, _ ByVal lpValueName As String, _ ByVal lpReserved As Long, _ lpType As Long, _ ByVal lpData As String, _ lpcbData As Long) As Long Private Declare Function RegSetValueEx Lib "advapi32" _ Alias "RegSetValueExA" ( _ ByVal hKey As Long, _ ByVal lpValueName As String, _ ByVal Reserved As Long, _ ByVal dwType As Any, _ ByVal lpData As Any, _ ByVal cbData As Long) As Long Private Declare Function RegCloseKey Lib "advapi32.dll" ( _ ByVal hKey As Long) As Long Public Const HKEY_CURRENT_USER = &H80000001 Public Const KEY_QUERY_VALUE = &H1 Public Const KEY_SET_VALUE = &H2 Public Const REG_SZ = 1 Public Const ERROR_SUCCESS = 0& ' Registry-Zweig öffnen Private Function OpenKey(ByVal lhKey As Long, ByVal SubKey As String, _ ByVal Options As Long) As Long Dim lhKeyOpen As Long Dim lResult As Long lhKeyOpen = 0 lResult = RegOpenKeyEx(lhKey, SubKey, 0, Options, lhKeyOpen) If lResult <> ERROR_SUCCESS Then OpenKey = 0 Else OpenKey = lhKeyOpen End If End Function ' Wert aus der Registerdatenbank auslesen Public Function GetValueEx(ByVal hKey As Long, ByVal KeyName As String, _ ByVal EntryName As String) As String Dim sBuffer As String Dim nLen As Long Dim lhKeyOpen As Long Dim lResult As Long sBuffer = Space$(255) nLen = Len(sBuffer) lhKeyOpen = OpenKey(hKey, KeyName, KEY_QUERY_VALUE) lResult = RegQueryValueEx(lhKeyOpen, EntryName, 0, REG_SZ, sBuffer, nLen) If lResult = 0 Then sBuffer = Left$(sBuffer, nLen) If InStr(sBuffer, Chr$(0)) > 0 Then sBuffer = Left$(sBuffer, InStr(sBuffer, Chr$(0)) - 1) End If GetValueEx = RTrim$(sBuffer) Else GetValueEx = "" End If RegCloseKey (lhKeyOpen) End Function ' Wert in Registrierdatenbank schreiben Public Function SetValueEx(lhKey&, SubKey$, EntryName$, sValue$) As Boolean Dim lhKeyOpen As Long Dim lResult As Long lhKeyOpen = OpenKey(lhKey, SubKey, KEY_SET_VALUE) lResult = RegSetValueEx(lhKeyOpen, EntryName, 0, CLng(REG_SZ), sValue, Len(sValue)) If lResult <> ERROR_SUCCESS Then SetValueEx = False Else SetValueEx = True RegCloseKey (lhKeyOpen) End If End Function Was den Registryzugriff betrifft haben wir mit obigen Code schon alles, was wir benötigen. Um nun die Kopf-/Fußzeilen auszuschalten, setzen wir einfach die beiden Registry-Werte auf einen "Leerstring". Am besten wir merken uns vor dem Ausdruck aber die Originalwerte, um diese dann später wiederherstellen zu können. Dim sFooter As String Dim sHeader As String ' ursprüngliche Werte merken sFooter = GetValueEx(HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "footer") sHeader = GetValueEx(HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "header") ' Kopf-/Fußzeilen ausschalten SetValueEx HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "footer", "" SetValueEx HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "header", "" ' HTML-Dokument ausdrucken ... ' ursprüngliche Werte wiederherstellen SetValueEx HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "footer", sFooter SetValueEx HKEY_CURRENT_USER, "Software\Microsoft\Internet Explorer\PageSetup", "header", sHeader Dieser Tipp wurde bereits 11.703 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 sevWizard für VB5/6 Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
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. |