ActiveX bileşeni DhtmlEdit i kullanırken bazı metotlarını kullanmama izin vermiyor. "interface not supported" hatası alıyorum. Mesela DhtmlEdit1.DOM veya DHTMLEdit1.DocumentTitle ı kullanmaya kalktığımda bu hatayı veriyor. Ama DHTMLEdit1.NewDocument veya DHTMLEdit1.execCommand ı kullanabiliyorum. Delph-dhtmledit yahoo grubunda ve delphipages e ek olarak google da da baya bir arama yaptım ama kaç gündür bir çözüm bulamadım. Belki diyorum windowstan kaynaklanıyordur. XP türkçe sp2 kullanıyorum.
Bu hatayı çözebilen var mı?
dhtmedit hatası
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
[b]delphi-dhtmledit[/b] grubunda yazılanlar yazdı:If you are using the program with MS Windows Update KB 891781 you
have to uninstall Update KB 891781 or replace DHTMLED.OCX, but if
You uninstall this KB this will be reinstalled if windows update
came active. Try reinstall the DHTMLED.OCX
(891781) MS05-013: DHTML düzenleme bileşeni ActiveX denetimindeki güvenlik açığı kod yürütülmesine izin verebilir yazdı:Bilinen sorunlar
Bu güvenlik güncelleştirmesini yüklemenizden sonra, bir program Dhtmled.ocx ActiveX denetiminin Visible özelliğini önce FALSE ve ardından TRUE olarak değiştirdiğinde Dhtmled.ocx denetimi beklendiği gibi çalışmaz. Bu sorun hakkında daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
906216 (http://support.microsoft.com/kb/906216/) Bir program Dhtmled.ocx ActiveX denetiminin Visible özelliğini değiştirdikten sonra Dhtmled.ocx denetimi beklendiği gibi çalışmıyor (Bu bağlantı, bir kısmı veya tamamı İngilizce olan içeriğe işaret edebilir.)
Ref : http://support.microsoft.com/kb/906216
Windows XP with Service Pack 1
File name File version File size Date Time Platform SP requirement Service branch
Dhtmled.ocx 6.1.0.9234 118,272 01-Sep-2005 01:48 x86 SP1 SP1QFE
Windows XP with Service Pack 2
File name File version File size Date Time Platform SP requirement Service branch
Dhtmled.ocx 6.1.0.9234 128,512 01-Sep-2005 01:40 x86 SP2 SP2QFE
Eski sürümlerden birisini Download için (6.01.9211 nolu sürüm)
- Kısaca bu açıklamalardan bir rota çıkardım. Bu sırayla incelemelerini sürdürürsen sonuca ulaşacağını değerlendiriyorum.
- Kısaca güvenlik açığı nedeniyle güncelleme yapılmış, yapılan güncelleme sorun yaratmaya başlamış. Bu sorunla boğuşmaktansa eski sürümü indirmek öneriliyor ama son karar senin.
- Bana soracak olursan, -cahilliğime ver, bu OCX'in faydasını bilmiyorum- Visual Basic'ciler bolca OCX kullanırlar ama Delphi'de daha kolay bir yolu mutlaka vardır.
- Bir örnek buldum sadece onu inceledim ama bunu yapmak biraz HTML bilgisi ile mümkün.
Kod: Tümünü seç
// Uses ComObj, DHTMLEDLib_TLB
procedure TForm1.Button1Click(Sender: TObject);
var
insertTableParam : DEInsertTableParam;
ovInsertTableParam : OleVariant;
HTML : WideString;
begin
insertTableParam := CreateComObject(Class_DEInsertTableParam) as IDEInsertTableParam;
insertTableParam.NumRows := 4;
insertTableParam.NumCols := 3;
insertTableParam.TableAttrs := 'width=100%';
insertTableParam.CellAttrs := ' bgColor="blue" noWrap';
ovInsertTableParam := OleVariant(insertTableParam);
DHTMLEdit1.ExecCommand(DECMD_INSERTTABLE, OLECMDEXECOPT_DODEFAULT, ovInsertTableParam);
end;
@mrmarman, benim için araştırdığınız için öncelikle teşekkür ederim.
ocx in eski sürümü paralıymış. Eğer ocx i sadece benim makinamda güncellemem yeterli gelecek olsa denemek isterdim ama sanırım tüm makinalarda bu güncellemenin yapılması gerekir. Buna da izin verileceğini sanmıyorum. Aslında ocx in bende eski bir sürümü var (2000 işletim sistemini kullanırken program dizinime yedeğini almıştım) ama o da bir işe yaramadı maalesef.
Verdiğiniz kod benim kullanmaya çalıştığım dhtmledit bileşenine tablo ekliyor. O kodu ben de hatasız olarak kullanabiliyorum. Ama bazı şeyler için kullanmam gereken kodlarda hata veriyor.
Bulabildiğim en kolay yöntem de bu ocx. Bunun haricinde bir de paralı bir component buldum ve paralı olduğundan demosunun kodlarını inceleyemedim. Bu componentle ilgili internette de yardımcı örnek bulamadığım için pek kullanamadım.
ocx in eski sürümü paralıymış. Eğer ocx i sadece benim makinamda güncellemem yeterli gelecek olsa denemek isterdim ama sanırım tüm makinalarda bu güncellemenin yapılması gerekir. Buna da izin verileceğini sanmıyorum. Aslında ocx in bende eski bir sürümü var (2000 işletim sistemini kullanırken program dizinime yedeğini almıştım) ama o da bir işe yaramadı maalesef.
Verdiğiniz kod benim kullanmaya çalıştığım dhtmledit bileşenine tablo ekliyor. O kodu ben de hatasız olarak kullanabiliyorum. Ama bazı şeyler için kullanmam gereken kodlarda hata veriyor.
Bulabildiğim en kolay yöntem de bu ocx. Bunun haricinde bir de paralı bir component buldum ve paralı olduğundan demosunun kodlarını inceleyemedim. Bu componentle ilgili internette de yardımcı örnek bulamadığım için pek kullanamadım.
- Konu dışı ama, yapmak istediğiniz şey nedir ? Şunun için soruyorum, bu OCX'in sadece belli şartlarda HTML Generate ettiğini değerlendiriyorum. Bunu yapacak bir UNIT yazmayı düşündünüz mü ?
- Şahsen fazla araştırmadım, daha önce dediğim gibi cehaletime verin ama özel olarak bu OCX'den beklediğiniz davranış nedir ? Bu OCX olduğunu sandığım dışında ne işe yarar ?
- Şahsen fazla araştırmadım, daha önce dediğim gibi cehaletime verin ama özel olarak bu OCX'den beklediğiniz davranış nedir ? Bu OCX olduğunu sandığım dışında ne işe yarar ?
selamlar, gecko(firefox) nun browser olarak delphi içine gömülerek kullanıldığını görmüştüm, kiosk uygulamalarında özellikle. belki editor kısmınıda gömüp kullanabilirsin.
http://www.mozilla.org/editor/
http://www.mozilla.org/projects/embedding/
http://www.iol.ie/~locka/mozilla/contro ... singDelphi
http://groups.google.com/group/netscape ... this+group
biraz baktımda şimdi çokta zor değil gibi
http://www.mozilla.org/editor/
http://www.mozilla.org/projects/embedding/
http://www.iol.ie/~locka/mozilla/contro ... singDelphi
http://groups.google.com/group/netscape ... this+group
1/ I need to be able to display local file/text/stream
I suppose the solution shoul be:
browser.navigate('about:blank');
doc:=browser.Document;
doc.body.innerHTML := text;
2/ I need to create HTML editor, I suppose the solution should be:
browser.Document.contentDocument.designMode:='on'
and then using execCommand method for styling
biraz baktımda şimdi çokta zor değil gibi
.-.-.-.-.-.-.-. ^_^