VBA da INET API ile Dosya Transferi

API - Application Programming Interface
Yazılım Programlama Arayüz Uygulaması

VBA da INET API ile Dosya Transferi

İleti#1)  bahadir » 04 Arl 2008 17:21

Inet nesnesinin Visual Basic uygulamalarında dosya transferi amaçlı kullanılan bir ActiveX nesnesi olduğunu çoğumuz biliriz. Ancak VBA da ActiveX bilşenleri kullanımında kısıtlamalar olduğundan, bilgisayarınızda Visual Basic programı yüklü olmadığı sürece bu nesnelerin kullanımına izin verimemekte ve lisans ile ilgili bir hata mesajı alınmaktadır. Aşağıdaki uygulamanın inet fonksiyonlarından olan ftp sunucusuna dosya gönderme ve ftp sunucusundan dosya indirme konuları hakkında size yol göstereceğini umuyorum.

Çalışma kitabınıza eklediğiniz modül içerisine şu kodları yapıştırın;
Kod: Tümünü seç
Public Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" _
    (ByVal hFtpSession As Long, _
    ByVal lpszLocalFile As String, _
    ByVal lpszRemoteFile As String, _
    ByVal dwFlags As Long, _
    ByVal dwContext As Long) As Boolean

Public Declare Function FtpGetFile Lib "wininet" _
   Alias "FtpGetFileA" _
  (ByVal hConnect As Long, _
   ByVal lpszRemoteFile As String, _
   ByVal lpszNewFile As String, _
   ByVal fFailIfExists As Long, _
   ByVal dwFlagsAndAttributes As Long, _
   ByVal dwFlags As Long, _
   ByVal dwContext As Long) As Long


Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" _
    (ByVal sAgent As String, _
    ByVal lAccessType As Long, _
    ByVal sProxyName As String, _
    ByVal sProxyBypass As String, _
    ByVal lFlags As Long) As Long

Public Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" _
    (ByVal hInternetSession As Long, _
    ByVal sServerName As String, _
    ByVal nServerPort As Integer, _
    ByVal sUsername As String, _
    ByVal sPassword As String, _
    ByVal lService As Long, _
    ByVal lFlags As Long, _
    ByVal lContext As Long) As Long

Public Declare Function InternetCloseHandle Lib "wininet.dll" _
    (ByVal hInet As Long) As Integer

Public Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Public Const INTERNET_OPEN_TYPE_DIRECT = 1
Public Const INTERNET_OPEN_TYPE_PROXY = 3
Public Const INTERNET_INVALID_PORT_NUMBER = 0

Public Const FTP_TRANSFER_TYPE_BINARY = &H2
Public Const FTP_TRANSFER_TYPE_ASCII = &H1
Public Const INTERNET_FLAG_PASSIVE = &H8000000
Public Const INTERNET_SERVICE_FTP = 1
Public Const FILE_ATTRIBUTE_ARCHIVE As Long = &H20
Public Const FTP_TRANSFER_TYPE_UNKNOWN As Long = &H0

Global strFTPserver As String, strFTPpath As String, strLocalPath As String, _
strFilename As String, strUser As String, strPW As String _
, boolImg As Boolean


Public Function fUploadFTP(strFTPserver As String, strFTPpath As String, strLocalPath As String, _
strFilename As String, strUser As String, strPW As String, boolImg As Boolean)
    Dim lngFlag As Long, lngFTPtype As Long
    Dim hFTPopen As Long, hFTPconnection As Long
    Dim boolRtn As Boolean

    lngFTPtype = IIf(boolImg, FTP_TRANSFER_TYPE_BINARY, FTP_TRANSFER_TYPE_ASCII)
    hFTPopen = InternetOpen(strUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0)

    hFTPconnection = InternetConnect(hFTPopen, strFTPserver, INTERNET_INVALID_PORT_NUMBER, _
strUser, strPW, INTERNET_SERVICE_FTP, lngFlag, 0)
    If hFTPconnection = 0 Then

        MsgBox "Sunucuya bağlanılamadı"
    Else
       
        boolRtn = FtpPutFile(hFTPconnection, strLocalPath & "/" & strFilename, strFTPpath & strFilename, lngFTPtype, 0)
        'If boolRtn = False Then MsgBox "Dosya gönderilemedi",vbcritical

    End If

    If hFTPconnection <> 0 Then InternetCloseHandle (hFTPconnection)
    If hFTPopen <> 0 Then InternetCloseHandle (hFTPopen)
    hFTPconnection = 0
    hFTPopen = 0

    fUploadFTP = boolRtn

End Function

Public Function fDownloadFTP(strFTPserver As String, strFTPpath As String _
, strUser As String, strPW As String, boolImg As Boolean)
    Dim lngFlag As Long, lngFTPtype As Long
    Dim hFTPopen As Long, hFTPconnection As Long
    Dim boolRtn As Boolean

    lngFTPtype = IIf(boolImg, FTP_TRANSFER_TYPE_BINARY, FTP_TRANSFER_TYPE_ASCII)
    hFTPopen = InternetOpen(strUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0)

    hFTPconnection = InternetConnect(hFTPopen, strFTPserver, INTERNET_INVALID_PORT_NUMBER, _
strUser, strPW, INTERNET_SERVICE_FTP, lngFlag, 0)
    If hFTPconnection = 0 Then

        MsgBox "Sunucuya bağlanılamadı"
    Else

        boolRtn = FtpGetFile(hFTPconnection, _
                    strFTPpath & strFilename, _
                    strLocalPath & "/" & strFilename, _
                    False, _
                    FILE_ATTRIBUTE_ARCHIVE, _
                    FTP_TRANSFER_TYPE_UNKNOWN, _
                    1)
        If boolRtn = False Then MsgBox "Dosya indirilemedi",vbcritical

    End If

    If hFTPconnection <> 0 Then InternetCloseHandle (hFTPconnection)
    If hFTPopen <> 0 Then InternetCloseHandle (hFTPopen)
    hFTPconnection = 0
    hFTPopen = 0

    fDownloadFTP = boolRtn

End Function



Daha sonra çeşitli şekillerde kitabınızın herhangi bir modülü içerisinde uygulama yapabilirsiniz.

Örnek:
Kod: Tümünü seç
Private Sub Workbook_Open()
'bu örnek açılan çalışma kitabınızı ilgili sunucuya gönderir.
strLocalPath = Application.Path & "\" 'göndereceğiniz dosyanın bilgisayarınızdaki yolu
strFilename = me.name
strFTPpath = "/www/UserFiles/onlineserver/" ' (örnek) ftp sunucusuna gönderilecek dosyanın sunucu içindeki kaydedileceği yol
strUser = "kullanici" 'ftp kullanıcı adı
strPW = "sifre" 'ftp şifresi
boolImg = True
strFTPserver = "ftp.ornekweb.com" 'ftp adresi

fUploadFTP strFTPserver, strFTPpath, strLocalPath, _
strFilename, strUser, strPW, boolImg

End Sub

yada;
Kod: Tümünü seç
Private Sub Workbook_Open()
'bu örnek çalışma kitabınız açılırken FTP sunucusundaki dosyayı sunucudan çalışma kitabınızın olduğu yere indirir.
strLocalPath = Application.Path & "\" 'indireceğiniz dosyanın bilgisayarınızdaki yolu
strFilename = "deneme.txt" 'sunucuda ki dosya adı
strFTPpath = "/www/UserFiles/onlineserver/" ' (örnek) ftp sunucusundan indirilecek dosyanın sunucu içindeki yolu
strUser = "kullanici" 'ftp kullanıcı adı
strPW = "sifre" 'ftp şifresi
boolImg = True
strFTPserver = "ftp.ornekweb.com" 'ftp adresi

fDownloadFTP strFTPserver, strFTPpath, _
strUser, strPW, boolImg

End Sub
En son Murat OSMA tarafından, 11 Eyl 2009 23:36 tarihinde değiştirildi, toplamda 1 değişiklik yapıldı.
Sebep: Başlık Düzeltildi.
Kullanıcı avatarı
bahadir
Yeni Başlamış
 
Adı Soyadı:Bahadir Çetin
Kayıt: 28 Kas 2008 11:02
Konum: Konum
Meslek: Maden Mühendisi
Yaş: 39
İleti: 33
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa

VBA da INET API ile dosya transferi.

İleti#2)  Tarkan VURAL » 04 Arl 2008 18:02

Bahadır bey teşekkür ederim paylaşımınız için.
Anladığım kadarıyla siz Visual Basic konusunda iyisiniz. Reg. olaylarına hakimiyetinizden de anlaşılıyor. Inet nesnesinden de ancak bir VB.ci bahsedebilirdi.

Örneğinizi denemedim, ama akşam evdeki pc.den denerim. Bir ara uğraşmıştım inet ile, hatta yeri gelmişken bazen şirkette kullandığım ufak bir de ftp programı örneği üzerinde çalışmıştım. O zamanlar başka bir sitede yöneticiydim, caption kısmında halen o site yazıyor [komik] Onu da ekleyeyim belki işine yarayan çıkar.

- Bağlan tuşuna basıyorsunuz
- FTP Server adını , FTP kullanıcı adını ve parolanızı yazıyorsunuz, bağlanıyor.
- Localden nete, ya da netten locale transfer yapabiliyorsunuz.

Neyse , asıl konumuz şu:
VB kullananların bilgisayarlarında bir çok nesne license kaydı yapıldığından VBA içerisinde de bunu kullanabiliyorlar. Ufak bir inceleme yaptım, bir OCX ya da DLL derlemesini yaparken , derleme anında oluşturulan dosyalarda Registry kayıtlarında HKEY_CLASSESS root' unda Licenses anahtarına bu nesne ile ilgili lisans bilgileri atılıyor. Eğer bunu tam anlamıyla çözümleyebilirsek, Regtool5.DLL dosyasını kullanıcıya gönderip yazacağımız bir kodlama ile ( VBA içerisinde yahut VBS ya da EXE dosya ile ) bu Regtool5.dll dosyasını regsvr32 aracılığıyla sisteme derletir isek; kullanılır duruma gelir ve apilere ihtiyaç kalmadan, CreateObject modeli ile yazacağımız kodlamalarda regedit kütüphanesine bu bahsettiğim lisanslama olaylarını manuel yaptırabiliriz. Bunun mümkün olacağını biliyorum, ama üzerinde çok fazla çalışmaadığımdan gerçekleştiremedim.
Bilginiz dahilinde bir şey ise , daha önce bu konularda çalışmış ve tecrübeniz var ise paylaşmanızı isteyeceğim. Çok fazla uğraşmadan çözümleriz, daha güzel işlere imza atmaya başlarız.

Selamlar , ;;_) --)(
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ?
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 48
İleti: 27462
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

VBA da INET API ile dosya transferi.

İleti#3)  bahadir » 05 Arl 2008 15:46

Tarkan Bey merhaba, öncelikle değerlendimeniz için çok teşekkürler. Elimden geldiğince bildiklerimi paylaşmaya çalışıyorum.

Zamanında uzunca üstünde araştırma yaptığım bir konuydu bu. Hatta bir sürü foruma üyelik sebeplerimden biridir diyebilirim. Sizinde belirttiğiniz gibi "licenses" anahtarında bu nesnelerin lisans kayıtları mecvut, microsoft bu nesnelerin kullanımında anahtar değerlerini sorgulatan bir lisans sistemi uyguluyor. Visual basic kurulmadan önce ki licenses anahtarı ile kurulduktan sonraki licenses anahtarı arasında değişkenlik gösteren anahtarları vba ile sisteme tanıtma amaçlı yazdığım kodları altta bulabilirsiniz. Ancak bizim bu kodları sisteme bu şekilde tanıtmak yerine kendi ActiveX nesnelerimizi oluşturmamız gerekiyor, sonuçta bu nesnelerin uyguladıkları fonksiyonlar API ler ile çalışmakta. Elimde başka birisi tarafından Visual Basic ile hazırlanmış VBATimer.ocx adında bir ActiveX nesnesi var, sadece ürün kaydını yaparak kullanılır hale geliyor ve sizde iyi bilirsiniz Timer nesnesinin kullanım alanı çok geniştir.

Aşağıdaki kodu uygulamadan önce registry kopyasının her ihtimale karşı alınmasını tavsiye ediyorum ayrıca aşağıdaki kodları uygularken Microsoft un "Licenses" anahtarında yazan şu açıklamasını unutmayalım;
'"Licensing: Copying the keys may be a violation of established copyrights."
Her ne kadar bu nesneler internette bedava paylaşıma sunulmuş olsa da bu açıklamayı gözden kaçırmamak gerektiğine inanıyorum.

Kod: Tümünü seç
Sub kayit()


Dim ActiveX_kayit As String

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\096EFC40-6ABF-11cf-850C-08002B30345D" & _
Chr(34) & " /VE   /T REG_SZ /F /D knsgigmnmngnmnigthmgpninrmumhgkgrlrk"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\12B142A4-BD51-11d1-8C08-0000F8754DA1" & _
Chr(34) & " /VE   /T REG_SZ /F /D aadhgafabafajhchnbchehfambfbbachmfmb"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\190B7910-992A-11cf-8AFA-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D gclclcejjcmjdcccoikjlcecoioijjcjnhng"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\1F3D5522-3F42-11d1-B2FA-00A0C908FB55" & _
Chr(34) & " /VE   /T REG_SZ /F /D gcfjdjecpchcncdjpdejijgcrdoijjfcieod"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\2c49f800-c2dd-11cf-9ad6-0080c7e7b78d" & _
Chr(34) & " /VE   /T REG_SZ /F /D mlrljgrlhltlngjlthrligklpkrhllglqlrk"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\38911DA0-E448-11D0-84A3-00DD01104159" & _
Chr(34) & " /VE   /T REG_SZ /F /D mcpckchcdchjcjcclidcgcgchdqdcjhcojpd"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\4250E830-6AC2-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\4D553650-6ABE-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D gfjmrfkfifkmkfffrlmmgmhmnlulkmfmqkqj"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\4F86BADF-9F77-11d1-B1B7-0000F8753F5D" & _
Chr(34) & " /VE   /T REG_SZ /F /D iplpwpnippopupiivjrioppisjsjlpiiokuj"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\57CBF9E0-6AA7-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D aahakhchghkhfhaamghhbhbhkbpgfhahlfle"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\6FB38640-6AC7-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D gdjkokgdldikhdddpjkkekgknesjikdkoioh"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\78E1BDD1-9941-11cf-9756-00AA00C00908" & _
Chr(34) & " /VE   /T REG_SZ /F /D yjrjvqkjlqqjnqkjvprqsjnjvkuknjpjtoun"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\899B3E80-6AC6-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D wjsjjjlqmjpjrjjjvpqqkqmqukypoqjquoun"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\9E799BF1-8817-11cf-958F-0020AFC28C3B" & _
Chr(34) & " /VE   /T REG_SZ /F /D uqpqnqkjujkjjjjqwktjrjkjtkupsjnjtoun"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\A133F000-CCB0-11d0-A316-00AA00688B10" & _
Chr(34) & " /VE   /T REG_SZ /F /D cibbcimbpihbbbbbnhdbeidiocmcbbdbgdoc"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\B1EFCCF0-6AC1-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D qqkjvqpqmqjjpqjjvpqqkqmqvkypoqjquoun"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\BC96F860-9928-11cf-8AFA-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D mmimfflflmqmlfffrlnmofhfkgrlmmfmqkqj"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\C4145310-469C-11d1-B182-00A0C922E820" & _
Chr(34) & " /VE   /T REG_SZ /F /D konhqhioohihphkouimonhqhvnwiqhhhnjti"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\CDE57A55-8B86-11D0-b3C6-00A0C90AEA82" & _
Chr(34) & " /VE   /T REG_SZ /F /D ekpkhddkjkekpdjkqemkfkldoeoefkfdjfqe"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\CEDD4F80-B43C-11cf-837C-00AA00573EDE" & _
Chr(34) & " /VE   /T REG_EXPAND_SZ /F /D gxwaezucfyqpwjgqbcmtsncuhwsnyhiohwxz"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\D015B071-D2ED-11d0-A31A-00AA00688B10" & _
Chr(34) & " /VE   /T REG_SZ /F /D gjdcfjpcmjicjcdcoihcechjlioiccechepd"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\DC4D7920-6AC8-11cf-8ADB-00AA00C00905" & _
Chr(34) & " /VE   /T REG_SZ /F /D iokouhloohrojhhhtnooiokomiwnmohosmsl"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\E32E2733-1BC5-11d0-B8C3-00A0C90DCA10" & _
Chr(34) & " /VE   /T REG_SZ /F /D kmhfimlflmmfpffmsgfmhmimngtghmoflhsg"
Shell "REG ADD " & ActiveX_kayit

ActiveX_kayit = Chr(34) & "HKEY_CLASSES_ROOT\Licenses\ED4B87C4-9F76-11d1-8BF7-0000F8754DA1" & _
Chr(34) & " /VE   /T REG_SZ /F /D knlggnmntgggrninthpgmnngrhqhnnjnslsh"
Shell "REG ADD " & ActiveX_kayit



End Sub
Kullanıcı avatarı
bahadir
Yeni Başlamış
 
Adı Soyadı:Bahadir Çetin
Kayıt: 28 Kas 2008 11:02
Konum: Konum
Meslek: Maden Mühendisi
Yaş: 39
İleti: 33
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa

VBA da INET API ile dosya transferi.

İleti#4)  bahadir » 05 Arl 2008 15:59

Yukarıda belirttiğim kayit makrosunu Visual Basic programının setup.exe sinin bir bölümü olarak kabul edebilirsiniz. Bu kodları Vİsual Basic kurulmamış iki adet bilgisayarda ayrı ayrı denedim ve excel i kapatıp açtıktan sonra kullanımına izin verilmeyen activex nesnelerinin kullanıma hazır hale geldiğini gördüm.
Kullanıcı avatarı
bahadir
Yeni Başlamış
 
Adı Soyadı:Bahadir Çetin
Kayıt: 28 Kas 2008 11:02
Konum: Konum
Meslek: Maden Mühendisi
Yaş: 39
İleti: 33
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Bursa

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

VBA da INET API ile dosya transferi.

İleti#5)  Erkan Akayay » 05 Arl 2008 16:11

Bahadir Bey deneyeceğim ama denemeden önce adresinizi alayım, sonra sizi bulmam gerekebilir :)
Sorularınızı düzgün bir Türkçe ile detay vererek ve örnek dosyayla destekleyerek sorunuz.
Örnek dosyalarınızda Application.Visible veya hide gibi sayfa gizlemelerini iptal ediniz.
Alıntı ile gereksiz şişirilen başlıkları takip edemiyorum. Lütfen Cevap Yaz butonunu kullanın.
Kullanıcı avatarı
Erkan Akayay
Site Dostu
 
Kayıt: 20 Ağu 2008 13:59
Konum: YALOVA
Meslek: Bilgi İşlem
Yaş: 51
İleti: 4218
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Yalova

VBA da INET API ile dosya transferi.

İleti#6)  Tarkan VURAL » 05 Arl 2008 16:21

Paylaşımınız için teşekkür ediorum. Ben kodları denemem, denemeyeceğim için kopya registry almama gerek yok :) Ama bizzat yazılı olanları Regeditten incelerim. VB kurulurken lisanslanan key'ler bunlar ise , hakikatten bir başlangıca doğru gittik demektir. Paylaştığınız ve tecrübelerinizi aktardığınız için çok teşekkür ediyorum. Şimdi de sistem bu ActiveX nesneleri lisanslanmamış desin de görelim. --)( [komik] Amaç kaçak yazılım yahut nesne kullanmak değiğl elbette kendi ocx nesnelerimizi her bilgisayarda kullanılabilir hale getirebilmek. Yoksa dikkat çektiğiniz tavsiyenize tamamen katılıyorum. Lisans ücretli olması gerekli ise, kesinlikle ücretin ödenip lisanslanması gerekli. İllegal yazılım ile korsan CD üretimi, yahut hırsızlık arasında bir fark yok bana göre.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ?
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 48
İleti: 27462
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: VBA da INET API ile Dosya Transferi

İleti#7)  egen » 25 Ağu 2010 13:20

İntranette bir alana dosya yükleyebilir miyim diye düşünmüştüm. İmkanı varmış ancak ben yapamam sanrıım :)
Kullanıcı avatarı
egen
Siteye Alışmış
 
Adı Soyadı:turgut egen
Kayıt: 07 Ağu 2010 18:56
Konum: İstanbul
Meslek: Finans
Yaş: 31
İleti: 174
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: ist

Cevap: VBA da INET API ile Dosya Transferi

İleti#8)  ergulhoca » 27 Ekm 2021 22:44

İyi geceler.
Konuyu yenilemek gerekirse, excel 2016 vba kodları ile bilgisayarımızdaki bir xlsx dosyasını ftp klasörüne yüklemek için gerekli makro kodları nelerdir.
Yardımınız için teşekkür ederim.
Kullanıcı avatarı
ergulhoca
Yeni Başlamış
 
Kayıt: 17 Arl 2019 23:10
Meslek: serbest meslek
Yaş: 51
İleti: 33
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: bolu


Forum Excel ve API

Online Kullanıcılar

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 3 misafir

Bumerang - Yazarkafe