vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 13.08.14 07:54

na dann bin ich ja beruhigt

nichts desto trotz habe ich immer noch keine lösung für mein problem. naja was sollst erstmal richtig in die ganze .net geschichte rein kommen.

gruß andi
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 07.08.14 08:55

Hallo liebes Forum und alle Members,

zuerst einmal wollte ich mich euch kurz vorstellen. Ich heiße Andreas und beginne nun als vollkommener Anfänger die Kunst von Visual Basic zu erlernen...
Ich freue ich sehr auf unsere gemeinsame Zukunft.

Nun ein paar Worte zu meinem Problem. Ich möchte eine Windows-Form schreiben mit der ich eine Word oder eine andere Datei öffnen bzw über ein Dropdown Menü laden kann so das der Pfad wo diese Datei liegt in einer Textbox angezeigt wird. Im Anschluss sollte man dann über den Button "Drucken" diese auch drucken können.

Das große Problem hier bei ist. Wenn man die Word-Datei lädt und dann drucken will sollte sich nicht MS-Office öffnen und den Druck Assistenten bereit stellen.

Ist es überhaupt möglich eine Datei drucken zu lassen ohne das sich MS-Word oder MS-Excel öffnet oder eine andere Software?

Freue mich auf eure Hilfe, danke im Voraus.
vg Andi
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Blackbox
Datum: 07.08.14 19:44


Hallo das geht mit dieser WinAPI-Funktion:

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
   (ByVal hwnd As Long, _
    ByVal lpOperation As String, _
    ByVal lpFile As String, _
    ByVal lpParameters As String, _
    ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long
hWnd ist hWnd deiner Form. lpOperartion ist "print" und lpFile ist die Datei die Du drucken willst. Unter nShowCmd gibt Du 0 ein. Der Rest ist ""

Diese Deklaraten plazierst Du ganz oben in deiner Form.

ShellExecute Form1.hWnd, "print", ...., "", "", 0
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 08.08.14 08:44

Hallo Blackbox,

erst mal ein riesen Dankeschön für deine Hilfe. Aber irgendwie bin ich wohl zu blöd, den von Code von dir zum laufen zu bringen. Ich bin noch voll der noob und muss einfach ganz blöd fragen: wo bzw. an welcher stelle im code setzt ich deinen Code ein? an der stelle wo die windowsform geladen wird oder dort wo die Butto1_click Funktion ist?

Gruß Andi
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 08.08.14 09:55

Der Fehler bei Declare heißt: Das Schlüsselwort ist kein gültiger Bezeichner.
und bei dem von dir genannten Deklarate, kommt bei ShellExecute Form1.hWnd.... der Fehler: Deklaration erwartet.

Man das bringt mich voll durcheinander alles. Ich weiß nicht mehr weiter
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Manfred X
Datum: 08.08.14 14:37

So ganz ohne den Start von Word wird das Drucken einer DOC-Datei nicht funktionieren,
es sei denn. du verfügst über eine Bibliothek, die eine entsprechende Druck-Methode
enthält.

ShellExecute öffnet die verknüpfte Anwendung und führt die als Parameter gegebene
Operation aus.
http://support.microsoft.com/kb/170918

In einem Formular:
Private Declare Function ShellExecute Lib "shell32.dll" _
    Alias "ShellExecuteA" _
   (ByVal hwnd As Long, _
    ByVal lpOperation As String, _
    ByVal lpFile As String, _
    ByVal lpParameters As String, _
    ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long
 
 
'Code z.B. in einem Button_Click platzieren
Private Sub Form_Load()
 
   Dim myFile As String
   myFile = "C:\daten\test.doc"
 
   Dim ret As Long
 
   ret = ShellExecute(Me.hwnd, "print", myFile, "", "", 0)
 
End Sub
Als Anfänger solltest Du wissen, daß VB6 seit mindestens 6 Jahren nicht mehr
von Microsoft unterstützt wird !!!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 11.08.14 08:23

Hi Danke für deine Hilfe,
vielleicht sollte ich das habe ich auch mal gehört oder gelesen. Macht ja nichts. Dann wäre dein Rat an mich welcher? mit .NET zu arbeiten?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Manfred X
Datum: 11.08.14 10:36

Hallo!

Einige Hinweise:

VB6 läuft zur Zeit noch unter aktuellen Windows-Versionen und ermöglicht
die Erstellung relativ einfacher 32-Bit-Anwendungen.
Allerdings wird man recht schnell mit der Notwendigkeit konfrontiert,
für bestimmte Zwecke Windows-API-Funktionen oder die ActiveX-Technologie zu nutzen.
In welchem Umfang solche Programme unter künftigen Windows-Versionen
noch lauffähig sein werden, ist nicht abzuschätzen.

Mit VB6 gewöhnen sich Einsteiger Programmierstile an, die zwar teilweise
unter VB.Net noch anwendbar, dort aber nicht mehr zu empfehlen sind,
weil es bessere (sichere, effiziente usw.) Möglichkeiten gibt.

VB.Net beruht auf dem Net-Framework und bietet für Standard-Programmieraufgaben
tausende fertig erprobte Klassen (in deren Gebrauch man sich allerdings einarbeiten
muß). Dieses Framework wird laufend weiterentwickelt und dadurch in seinen
Möglichkeiten erweitert.
Sehr viele Aufgaben, die mit VB6 nicht oder nur mit großem Aufwand realisiert werden
können, sind in Net mit wenigen Zeilen erledigt. Die meisten der oft benötigten
Windows-API-Funktionen sind in Net-Klassen gekapselt.

Die Net-Umgebung übersetzt den Code in eine plattform-unabhängige "Zwischensprache" und
compiliert diese zur Laufzeit "just-in-time" für das jeweilige System.
Nachteil: ca. 20%-30% Geschwindigkeitseinbuße gegenüber plattform-spezifischen EXE-Dateien
und Rück-Übersetzbarkeit des Codes aus der "Zwischensprache".

Beitrag wurde zuletzt am 11.08.14 um 10:51:31 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 11.08.14 14:02

Ok vielen Dank für die Aufklärung.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Blackbox
Datum: 11.08.14 18:17

Au,

habe ich mal wieder einem .NET-Progger geantwortet, der keine Ahnung von Classic und .NET hat.


'tschuldigung.

Ich helfe nie wieder.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Andi85
Datum: 12.08.14 10:18

hahaha ja das hast du wohl.
naja wir müssen alle mal bei null (0) anfangen oder nicht?

trotzdem danke ich dir für deine Hilfe. Denn ich muss schon sagen da es so viele gleichbedeutende aber unterschiedliche bezeichnungen gibt kommt man am anfang ganz schnell durcheinander. Aber so langsam steige ich dahinter was, was bedeutet.

gruß Andi
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Drucken! Datei an Drucker senden! HILFE 
Autor: Blackbox
Datum: 12.08.14 17:02

Hallo,

das man das verwechselt ist pure Absicht. Ist nicht deine Schuld.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel