Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Fragen rund um diverse Windows-Versionen, ihr Verhalten unter Xbase++ und den Umgang mit der API

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Beitrag von AUGE_OHR »

hi,

verwendet jemand XbpMLE:Format := 3 zum Anzeigen von RTF unter Windows 10 ?
wenn ja, habt ihr Situationen wo er beim oMLE:SetData(cRTF) "hängt" :shock:

Code: Alles auswählen

   ::Descript:dataLink := { | x | IIF( PCOUNT() == 0, ::EditOrNot( ( ::PDRS )->DESCRIPT ), ( ::PDRS )->DESCRIPT := x ) }
   ::Workaround:dataLink := { | x | IIF( PCOUNT() == 0, ::EditOrNot( ( ::PDRS )->WORKAROUND ), ( ::PDRS )->WORKAROUND := x ) }

METHOD PdrLfuDialog:EditOrNot( cField )
LOCAL cLine1 := "{\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl{\f0\fswiss\fcharset0 Arial;}}"
LOCAL cLine2 := "{\colortbl ;\red255\green0\blue0;}"
LOCAL cLine3 := "{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\f0\fs18 "
LOCAL cADpar := "\f1\fs20\par }"
LOCAL cMemo := ( cField )

   IF ::lEdit = .T. .OR. SP_RTFtextel() = .F. .OR. EMPTY( ALLTRIM( cMemo ) )
      // pure ASCI
   ELSE
      ...
      cLine3 := "{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\f0\fs28 "
      cMemo := cLine1 + cLine2 + cLine3 + cMemo + ( cADpar )
      cMemo := STRTRAN( cMemo, CRLF, "\par " )
   ENDIF	

RETURN cMemo // <- hier hängt er wenn er zu o:SetData() zurück kehrt
das funktioniert IMMER unter XP/Win7 sowie 8.1 (32/64bit) aber macht unter Windows 10 (incl. Insider) Probleme :banghead:
klar das es funktioniert wenn ich SP_RTFtextel(.F.) setzte aber dann habe ich nicht den "optischen" Farben Effekt wie mit RTF.

jemand einen Tip wie man das unter Windows 10 wieder zum laufen bekommt :?:
Zuletzt geändert von AUGE_OHR am So, 19. Nov 2017 22:45, insgesamt 1-mal geändert.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Windows 10 / XbpMLE:Format := 3 / RTF

Beitrag von AUGE_OHR »

also eine mit Wordpad erstelle Datei als *.TXT umbenannt wird vom Demo ..\SOURCE\samples\basics\DRAGDROP\DROP.EXE angenommen und richtig angezeigt =D>

also habe ich "die" Syntax übernommen und eingebaut. damit läuft es "größtenteils" ... aber bei einigen wie PDR 6941 da "hängt" er wieder :angry4:

... es könnte aber auch am "Inhalt" liegen

Code: Alles auswählen

 oXbp:HTML := "<div id='mydiv'>click me!</div>"
Dateianhänge
Win10_MLE.zip
*.WRI als *.TXT
(323 Bytes) 277-mal heruntergeladen
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Windows 10 / XbpMLE:Format := 3 / RTF

Beitrag von AUGE_OHR »

ich habe nun mit MEMOWRIT() vor dem o:SetData() den String in eine Datei geschrieben.

nachdem er wieder mal "hing" hab ich also die Datei genommen und die per DragDrop auf das Alaska Demo abgelegt und da funktioniert es ohne Probleme ... :roll:
das heisst das der RTF-String nicht ganz so falsch sein kann ... aber was dann :?:
an der Grösse sollte es nicht liegen da die Datei < 1000 byte ist.

nun dachte ich mir :

Code: Alles auswählen

   ERRORBLOCK( { | e | BREAK( e ) } )
   FOR i := 2 TO iMax
      BEGIN SEQUENCE
*         ::editControls[ i ] :editable := ::lEdit
*         ::editControls[ i ] :configure()
         ::editControls[ i ] :setdata()
      RECOVER USING oError
         ERRORBLOCK( bSaveError )
         IF ::editControls[ i ]:isDerivedFrom( "XbpMLE" )
            ::editControls[ i ]:SetData("RTF Text Error")
            SP_RTFtextel(.F.)
         ENDIF
      END SEQUENCE
   NEXT
   ERRORBLOCK( bSaveError )
tja ... das dumme daran ist dass es "kein Absturz" ist sondern der "hängt" ... :banghead:

hat jemand eine idee :idea:
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Beitrag von AUGE_OHR »

hi,

ich hatte mich ja gewundert das es mit dem modifizierten Demo ..\SOURCE\samples\basics\DRAGDROP\DROP.EXE funktioniert.
dann bemerkte ich das die Demo keine Manifest Datei hat ... also mal ohne versuchen.
BINGO =D>
jetzt funktioniert es auch unter Windows 10 ... aber ... extrem langsam :?:
so nun muss ich nur noch raus finden "was" in meinem Manifest den Effekt verursacht.
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Beitrag von AUGE_OHR »

AUGE_OHR hat geschrieben: So, 19. Nov 2017 22:47jetzt funktioniert es auch unter Windows 10 ... aber ... extrem langsam :?:
wenn ich auf meinem alten PC, mit Windows 7 32bit, die EXE erstelle ist die "schnell" mit dem RTF Text. =D>
wenn ich nun die EXE lösche und unter Windows 8.1(64bit) oder Windows 10 (32/64bit) erstelle ist sie "langsam" :shock:

ich kopiere "alles" auf/vom USB Stick also sollte es der selbe Source/Res/XPJ sein und Xbase++ v1.9.355 "müsste" auch auf allen SSD / OS() das selbe sein ... was ist da wieder los :angry4:
gruss by OHR
Jimmy
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Beitrag von Jan »

Jimmy,

woher nimmst Du XbpMle:format? In der Doku steht da nichts zu drin.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Windows 10 / XbpMLE:Format := 3 / RTF [erledigt]

Beitrag von AUGE_OHR »

Jan hat geschrieben: Mi, 22. Nov 2017 8:22 In der Doku steht da nichts zu drin.
es steht vieles nicht im Help File ...

zuerst darüber gestolpert bin ich bei PDR 4384 : was ist XBPMLE_FMT_RTF ?
also habe ich in der Alaska Newsgroup danach gesucht und das gefunden
Rich Text Format (.rtf)
public.third-party-products
23. Mai 2001
dort hat Frank++ geantwortet und auf WIS (Web Integration Server) verwiesen
dort gibt es die Konstante

Code: Alles auswählen

#define  XBPMLE_FMT_RTF        3
der Rest war dann suchen in der Alaska Newsgroup "was" man damit machen kann.

p.s. für v1.9x benötigt man Hotfix #35 (XPPUI1.DLL) sonst "hängt" er auch bei oMLE:SetData(cRTF)
gruss by OHR
Jimmy
Antworten