Skip to main content

AccessTr.neT


Access İçindeki Webbrowser Dan Resim Nasıl Alınır

Access İçindeki Webbrowser Dan Resim Nasıl Alınır

#7
Private Sub resimal_Click()
    Dim AlinanResim As Object
Dim image_src As String

Set Image = WebBrowser.Document.getElementById("OOMPageHeader1_imgOgrenciResim")

image_src = Image.src
       
        URLDownloadToFile 0, image_src, CurrentProject.Path & "\resim.png", 0, 0
        Me.Resim.Picture = CurrentProject.Path & "\resim.png"
Bu kodlarda hata yapıyorum sanırım, resim alamadım.
URLDownloadToFile kısmında hata veriyor.
[Resim: do.php?img=9620]
(13/02/2020, 12:47)ozanakkaya yazdı: Merhaba, 
Benim verdiğim linkteki örnek dosyadaki kodları kullanmamışsınız. Ayrıca resim, ilişkili nesne çerçevesi olmayacak, resim denetimi olacak.

ekli uygulamada, img id "image1" yazdığımda doğrulama resmini alıyor. Siz image1 yerine OOMPageHeader1_imgOgrenciResim yazacaksınız.
hata veriyor,

[Resim: do.php?img=9621]
[Resim: do.php?img=9622]
office 2016 64 bit kullandığım için olabilir mi?
Son Düzenleme: 13/02/2020, 15:40, Düzenleyen: xoseng.
Cevapla
#8
Ptrsafe yanlış yere eklenmiş, aşağıdaki ile değiştirin.

#If VBA7 Then
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
#Else
Private Declare Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
#End If
Cevapla
#9
(13/02/2020, 16:09)ozanakkaya yazdı: Ptrsafe yanlış yere eklenmiş, aşağıdaki ile değiştirin.

#If VBA7 Then
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
#Else
Private Declare Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
#End If
64 bit için bu kod çalışıyor ve ilişkisiz nesne çerçevesine resimi alıyor, sonra formda başka bir işleme izin vermiyor ve ilişkili nesneyi tablo öğesine bağlayınca tabloda görünmüyor, ama formda görünüyor. Form kapatılıp açılınca resim gitmiş oluyor. Alınan resim Access dosyasının dışında ve aynı klasöre kayıt edilmiş oluyor. Formda gezintiye izin verilmiyor, bir kaç kayıttan resim alındığında hep aynı resim üzerine yazıyor. Nerede hata yaptım acaba bakabilir misiniz.
.rar WebBrowserResimAl_v.2.rar (Dosya Boyutu: 30,13 KB | İndirme Sayısı: 2)
İyilik yap!
                  İyilik bul!
Cevapla
#10
Tablodaki resim alanı metin olarak değiştirildi. Tabloya tckimlikno alanı eklendi.

Resim al butonuna tıkladığınızda resmi, uygulama ile aynı dizindeki resimler klasörüne tckimlikno.png olarak kaydeder. Siz kendi uygulamanızdaki tckimlikno metin kutusunu kullanmalısınız.
.rar WebBrowserResimAl_v.2_SLD.rar (Dosya Boyutu: 55,43 KB | İndirme Sayısı: 2)
Cevapla
#11
Bu dosyayı denedim, bazı kısmi sorunlar var. Alınan resim Me.Resim1.Picture de (pano) saklandığı için yeni kayıt ekle denildiğinde makro hatası veriyor ve makro durdurulunca işlem yapıyor, bir de kayıt sil denildiğinde aynı sorun çıkıyor. Tüm kayıtlar silindiğinde bile son Me.Resim1.Picture duruyor.
çözüm olarak, resim Access tablosunda OLE nesnesinde saklansa ve dışa veya başka bir yere bağlantı verilmezse olamaz mı acaba? 
.rar WebBrowserResimAl_v.3.rar (Dosya Boyutu: 27,43 KB | İndirme Sayısı: 1)
İyilik yap!
                  İyilik bul!
Cevapla
#12
If My.Computer.Clipboard.ContainsImage() Then
  Dim grabpicture As System.Drawing.Image
  grabpicture = My.Computer.Clipboard.GetImage()
  picturebox1.Image = grabpicture
............. = ...............
Else
............. = .............
End If
Bu şekilde bir komut yardımı ile resim panoya alınıp ilgili ResimOLE nesnesine yapıştırılsa, yapıştırıldıktan sonra pano boşaltılsa nasıl olur?
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task