Visual Dataflex
Zur Startseite Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen
Datenbank RSS Feed Selector Zur User-Map

 
Boardmenü
» Forum
» Portal

» Registrieren
» Suche
» Statistik
» Mitglieder
» Team
» Kalender
» Sponsoren
» Partner

» F.A.Q

Portalmenü
» Datenbank anlegen
» Datenbank Entwicklung
» Empfehlungen
» Portal
» Programm erstellen
» Über visual Dataflex

» Statistik

Dataflex Empfehlungen

Englisches Dataflex Forum


Anzeigen

Sponsoren
Kostenloser Linktausch

Antivirus Software

Foren Verzeichnis

HP Color Laserjet 1600

Windows 7 Forum


Social Bookmark Script

Visual Dataflex » VDF Fortgeschrittene » Ausführen einer Funktion in Abhängigkeit des Rückgabewertes » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Ausführen einer Funktion in Abhängigkeit des Rückgabewertes
Autor
Beitrag
Ditte Ditte ist männlich
Foren As


images/avatars/avatar-71.jpg

Dabei seit: 23.07.2007
Beiträge: 77
Einsatzart von VDF: gewerblich
Anwenderstatus: Programmierprofi
Herkunft: Berlin
Betriebssystem: XP,Win7,Win Serv2003,2008

Ausführen einer Funktion in Abhängigkeit des Rückgabewertes Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hi,

in einem COM Objekt wird ein pdf Datei aufgerufen. Wenn der Rückgabewert = 0 ist ist alles ok. Ansonsten gibt es Rückgabewerte von 1 bis 120.

DerRückgabewert 10 sagt, die Datei ist nicht vorhanden.
Der Aufruf erfolgt mit:
code:
1:
get ComDisplayFromPdfFile  sfilename ""  to li_rueck


Ist die Datei, die ich aufrufe nicht vorhanden, kommt also ein Fehler.
Der Fehler kommt aber schon im pkg in der Zeile:
code:
1:
Get InvokeComMethod of hDispatchDriver 1610809429 OLE_VT_I4 to retVal


Wie kann ich den Rückgabewert vorher abfragen, damit ich den Fehler entsprechend abfangen, bzw die Rückgabewerte entsprechend auswerten kann?


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
Function ComDisplayFromPdfFile String llsPdfFilePath String llsPassword Returns OLEGdPictureStatus                                                                
    Handle hDispatchDriver                                                                                                                                        
    OLEGdPictureStatus retVal                                                                                                                                     
    Get phDispatchDriver to hDispatchDriver                                                                                                                       
    Send PrepareParams to hDispatchDriver 2                                                                                                                       
    Send DefineParam to hDispatchDriver OLE_VT_BSTR llsPdfFilePath                                                                                                
    Send DefineParam to hDispatchDriver OLE_VT_BSTR llsPassword                                                                                                   
    Get InvokeComMethod of hDispatchDriver 1610809429 OLE_VT_I4 to retVal                                                                                         
    Function_Return retVal                                                                                                                                        
End_Function


Dittmar

__________________
Dittmar
09.04.2008 23:50 Ditte ist offline E-Mail an Ditte senden Homepage von Ditte Beiträge von Ditte suchen Nehmen Sie Ditte in Ihre Freundesliste auf
Stamic Stamic ist männlich
Jungspund


Dabei seit: 01.10.2007
Beiträge: 17
Einsatzart von VDF: privat
Anwenderstatus: Programmierer
Herkunft: Villingen-Schwenning en

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo Dittmar,

ich kann es leider grad nicht ausprobieren, aber in der VDF-Hilfe habe ich ein Beispiel eines Error-Handlers gefunden, der dir vielleicht weiterhelfen kann.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
Object oEDConverter is a cComEDConverter
Property Boolean pbErrorFree True
Procedure Error_Report Integer iErrNum ;
Integer iErrLine String sErrMsg
// Internal error handler to suppress error messages and Set
// an internal flag.
Set pbErrorFree To False
End_Procedure

Function IsExchangeRateAvailable String sCurrencySymbol ;
Returns Boolean
// Tests If the exchange rate is available. This works by
// trapping the returned error code from ComGetExchangeRate.
Integer hoOldErrorId
Boolean bErrFree
Real rExchangeRate
// Re-rout DataFlex errors to internal Error_Report Procedure.
Move Error_Object_ID To hoOldErrorId
Move Self To Error_Object_ID
// Send ComGetExchangeRate and test for any returned errors.
Set pbErrorFree To True
Get ComGetExchangeRate sCurrencySymbol To rExchangeRate
Get pbErrorFree To bErrFree
// reset the Visual DataFlex error handler.
Move hoOldErrorId To Error_Object_ID
Function_Return bErrFree End_Function
// IsExchangeRateAvailableEnd_Object

Ich meine, dass du den Fehler dann nur durch einen solchen Error-Handler im Com-Objekt abfangen kannst und dann abhängig von dem Rückgabewert des Error-Handlers, den Rückgabewert deiner Funktion setzen kannst.
Sollte dir das nicht weiter helfen, schau ich bei mir noch mal nach, wenn ich wieder im Büro bin.

GrußMichael
10.04.2008 13:39 Stamic ist offline E-Mail an Stamic senden Beiträge von Stamic suchen Nehmen Sie Stamic in Ihre Freundesliste auf
Ditte Ditte ist männlich
Foren As


images/avatars/avatar-71.jpg

Dabei seit: 23.07.2007
Beiträge: 77
Einsatzart von VDF: gewerblich
Anwenderstatus: Programmierprofi
Herkunft: Berlin
Betriebssystem: XP,Win7,Win Serv2003,2008

Themenstarter Thema begonnen von Ditte
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo Michael,

ich habe das Beispiel noch nicht durchgearbeitet. Noch keine Zeit.
Ich habe auch so ein Beispiel welches wir beim Drive in mit Vincent gemacht haben.
Mein Problem ist aber hierbei noch, dass der Hauptgrund Dateien sind, die aus irgend einen Grund nicht gelesen werden können und beim Aufruf das Prgramm mit einer Schutzverletzung zum Abbruch bringen.

Ich kann zwar Fehlermeldungen ausschalten und ignorieren, aber wenn die zu lesende Datei einen Fehler hat??

Ich teste mal und melde mich wieder.

__________________
Dittmar
10.04.2008 18:52 Ditte ist offline E-Mail an Ditte senden Homepage von Ditte Beiträge von Ditte suchen Nehmen Sie Ditte in Ihre Freundesliste auf
Gehe zu:
Neues Thema erstellen Antwort erstellen
Visual Dataflex » VDF Fortgeschrittene » Ausführen einer Funktion in Abhängigkeit des Rückgabewertes

Views heute: 2.369 | Views gestern: 3.815 | Views gesamt: 2.184.905

Impressum

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH | SEO by seo-wbb.de - Sponsored by Rene Urlaub und Reise Infos Frankenthal