Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Come usare RICHED20.dll

Ciao a tutti...
ho capito perché non mi andava l'undo multiplo nella richedit...
sfortunatamente il prog. per creare la Rich aggancia RICHTX32.OCX che non è
la versione 3 e di conseguenza non supporta l'undo multilivello...
la versione giusta si trova in RICHED20.DLL ma non so come usarla....
come dichiararla e crearne un controllo????
mi sapreste aiutare?
Ciao a tutti.... :)

 come dichiararla e crearne un controllo????
Fortunatamente c'è qualcuno che l'ha già fatto:
http://www.domaindlx.com/e_morcillo
E ritengo sia un wrapping davvero ottimo.
Ciao
--
Questa è una risposta ritenuta inutile e maleducata da alcuni partecipanti.
(Campagna contro l'abuso del NewsGroup)
(Per informazioni: 
http://www.it-lang-vb.net/docs/Manifesto.txt
)


Ciao Zanna,
grazie del link, l'ho fatto subito girare...
ma mi sa che mi sbagliavo neanche con questa versione non risolvo il prob.
dell'undo...
se incollo qualcosa mi unda ogni singola incollata...quindi è multilevel....
ma se digito qualcosa mi unda tutto il testo e non un carattere alla
volta....
magari c'è qualche messaggio via api ad ogni selchange che gli devo inviare
per fargli capire che deve incrementare lo stack dell'undo???
[scusate se sono pedante sull'argomento....ma è l'ultimo post...se non ci
riesco implementerò un undo da codice con degli array...(povera ram)]
Ciao e grazie..... :)

 (povera ram)]
:) Dove credi che la RE2.0 memorizzi gli item da "undare"?
Ciao

 :) Dove credi che la RE2.0 memorizzi gli item da "undare"?
si...si..ma magari lo faceva un pò meglio di me.... eheheh....
ok per me l'argomento è chiuso :)
oe grazie mille.... ^_^
kudo

 ok per me l'argomento è chiuso :)
Ok, basta :)
Ciao

 riched32.dll         5.0.2134.1
Ed era proprio qui il problema. Allora, le dipendenze sono concatenate;
in effetti il VB usa l'OCX, l'OCX si appoggia alla RICHED32, e qui casca
l'asino: fino alla versione 5.0.1461.82 questa era l'intero controllo,
in verione 1, inglobato in una dll; infatti era definito "Windows 95 Rich
Text Edit Control", era di circa 200 KB ed equivaleva alla RICHED20
_prima_ versione.
Invece, dalla versione successiva, è diventato un "Wrapper Dll for
Richedit", che a sua volta si appoggia alla RICHED20, che esiste
in una dozzina di versioni, di cui quelle che a me servivano erano
dalla 2.0 in su, e preferibilmente la 3.0. Tra l'altro, esiste una
versione 4.0, che sto usando e che non è affatto citata nell'MSDN,
e mi piacerebbe sapere cos'ha di più e cosa ci potrei fare. :-)
*******FINE CITAZIONE*****
Quindi, basta sostituire la riched32.dll e la riched20.dll
con quelle "giuste" per avere il necessario.
Per ulteriori info sulle versioni, (probabilmente lo conoscete già,
ma non si sa mai :-) ) c'è sul sito MS il DLL HELP Database:
http://support.microsoft.com/servicedesks/fileversion/dllinfo.asp?sd=MSDN
Bye, G.

 ad-hoc.... :)
[SNIP]
Eventualmente puoi provare a dare un occhiata al messaggio
EM_EMPTYUNDOBUFFER su MSDN... con questo abbozzo di codice per esempio,
fermi l'undo all'ultimo spazio digitato:
'Una form vuota con un RichText
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
 (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As
Any)_
 As Long
Const EM_EMPTYUNDOBUFFER = &HCD
Private Sub RichTextBox1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeySpace Then
    SendMessage RichTextBox1.hwnd, EM_EMPTYUNDOBUFFER, 0&, 0&
End If
End Sub
Ciao
--
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown