AccessTr.neT
herhangi bir Web browserdan linki almak vb. - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: herhangi bir Web browserdan linki almak vb. (/konu-herhangi-bir-web-browserdan-linki-almak-vb.html)

Sayfalar: 1 2


herhangi bir Web browserdan linki almak vb. - accessman - 09/11/2012

hayırlı cumalar arkadaşlar
http://www.delphidunyasi.net/showthread.php?2461-herhangi-bir-Web-browserdan-linki-almak-vb&highlight=spymon%2B%2B
adresinde delphi ile yapılmış bir kod var
internet adrsindeki linki kaydetmek için
bunun Access için vb ile yazılmışını bulabilirmiyiz
veya bunu vb kodlarına nasıl uyarlarız
hem delphi hem vb bilen ustalar mutlaka vardır
teşekkürler
****** alıntı******
delphi için
USES a eklenecek namespaceler SHDocVw,DDEMAN;
Kullanıcağın Procedure :
Kod:
procedure TForm1.GetCurrentURL(var sURL: String; var sTitle: String; var sSource: String);
var
DDEClient : TDDEClientConv;
s : String;
begin
s := '';
try
DDEClient := TDDEClientConv.Create(self);
with DDEClient do
begin
if SetLink('IExplore','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: IE';
end
else
if SetLink('Netscape','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: IE';
end
else
if SetLink('Mosaic','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: Mosaic';
end
else
if SetLink('Netscp6','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: Netscape 6';
end
else
if SetLink('Mozilla','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: Mozilla';
end
else
if SetLink('Firefox','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: FireFox';
end
else
if SetLink('Opera','WWW_GetWindowInfo') then
begin
s := RequestData('0xFFFFFFFF, sURL, sTitle');
sSource := 'Kaynak: Opera';
end;

end;
if s <> '' then
begin
Delete(s, 1, 1);
sURL :=Copy(s, 1, pos('','',s)-1);
Delete(s, 1, Pos('','', s)+2);
sTitle := 'Başlık: ' +Copy(s, 1, Pos(''', s) - 1);
end;
exit;
except
MessageDlg('Link Okunamadı!',mtError,[mbOK],0);
end;
end;

Kullanımı :

Kod:
VAR
Sw: IShellWindows;
sURL, sTitle, sSource: String;
begin
Sleep(3);
GetCurrentURL(sURL, sTitle, sSource);
with Memo1.Lines do
begin
Add(sURL);
Add(sTitle);
Add(sSource);
end;




Cvp: herhangi bir Web browserdan linki almak vb. - esrefigit - 09/11/2012

sayfa Access içindemi açılacak yoksa dışındamı


Cvp: herhangi bir Web browserdan linki almak vb. - esrefigit - 09/11/2012

şayet bir sayfa içinde yer alan bütün linkleri alac isen o ayrı bir mesele


Cvp: herhangi bir Web browserdan linki almak vb. - accessman - 09/11/2012

her ikisde olabilir


Cvp: herhangi bir Web browserdan linki almak vb. - esrefigit - 09/11/2012

bu kodlar internet explorer de işe yarar diğer tarayıcılar ekranda açık olsa bile onları görmüyor firefox da denemedim

dışında açılan için örnek bu kod sana ekranda açık olan bütün sayfaların linklerini verir


Sub linkal()
Dim IE As Object, Sh As Object, Wn As Object
Set Sh = CreateObject("Shell.Application")
Set Wn = Sh.Windows
For Each IE In Wn
If IE.LocationURL <> "" Then MsgBox IE.LocationURL
Next IE
Set Wn = Nothing
Set Sh = Nothing
End Sub

bu kod ise sana her sayfada sayfanın içinde olan bütün linkleri verir dikkat et bazı sayfalarda yüzlerce link olabiliyor sadece google ana sayfasında bile 30 link var düşün artık




Sub nevarneyokal()
Dim x As Integer
Dim maPageHtml As HTMLDocument
Dim IE As Object, Sh As Object, Wn As Object
Set Sh = CreateObject("Shell.Application")
Set Wn = Sh.Windows
For Each IE In Wn
MsgBox IE.LocationURL
If IE.LocationURL <> "" Then
Set maPageHtml = IE.Document
For x = 0 To maPageHtml.links.Length - 1
MsgBox "asdf" & maPageHtml.links(x)
Next
Else
Exit Sub
End If
Next IE
Set Wn = Nothing
Set Sh = Nothing
End Sub

dikkat ekranda birde windows gezgini açıksa yani bilgisayarımdan bir klasör açıksa onun linkini alır ancak sayfa içindeki linkleri almaya gelince arıza veriyor artık if le select ile sen çözersin

bu arada referanslardan internet controls ve Html object library işaretlemeyi unutma


Cvp: herhangi bir Web browserdan linki almak vb. - accessman - 11/11/2012

çok teşekkürler
birinci kod açık olan sayfanın adresini veriyor
ikinci kod da
***
maPageHtml As HTMLDocument
***
satırı hata veriyor