{"id":934,"date":"2019-02-20T02:04:18","date_gmt":"2019-02-19T23:04:18","guid":{"rendered":"http:\/\/glubek.com\/?p=934"},"modified":"2024-06-25T20:55:59","modified_gmt":"2024-06-25T20:55:59","slug":"visual-basic-6-0-icin-seri-port-paralel-port-islemleri","status":"publish","type":"post","link":"https:\/\/digiliner.org\/?p=934","title":{"rendered":"Visual Basic 6.0 i\u00e7in seri port \/ paralel port i\u015flemleri"},"content":{"rendered":"\n<figure class=\"wp-block-table\"><table><tbody><tr><td>VB6 art\u0131k kullan\u0131lmasa da \u00f6\u011frenmesi basit oldu\u011fundan bu \u00f6rneklere  yer verilmi\u015ftir.<br> \u00d6zellikle, paralel portlar (LPT) ve seri portlar (COM) gibi donan\u0131m bile\u015fenlerinin nas\u0131l kullan\u0131laca\u011f\u0131 ve programlanaca\u011f\u0131na dair ayr\u0131nt\u0131l\u0131 rehberler sunuyoruz. A\u015fa\u011f\u0131da, seri ve paralel portlar\u0131n kullan\u0131labilirli\u011fini kontrol eden ve mevcut port say\u0131s\u0131n\u0131 bildiren basit bir Visual Basic kod \u00f6rne\u011fi bulabilirsiniz.<br>Paralel ve seri portlar\u0131n var olup olmad\u0131\u011f\u0131n\u0131 \u00f6\u011frenmek i\u00e7in fonksiyonlar.<br>D\u00f6nen de\u011ferler True ise port mevcuttur.<\/td><td>&nbsp;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Seri Port&nbsp; Bulmak i\u00e7in fonksiyon<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>Function IsComPortAvailable(ByVal portNum As Integer) As Boolean\n    Dim fnum As Integer\n    On Error GoTo ErrorHandler\n    \n    fnum = FreeFile\n    Open \"COM\" &amp; CStr(portNum) For Binary Shared As #fnum\n    Close #fnum\n    \n    IsComPortAvailable = True\n    Exit Function\n\nErrorHandler:\n    If Err.Number &lt;> 0 Then\n        IsComPortAvailable = False\n        Err.Clear\n    End If\nEnd Function\n<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Paralel Port&nbsp; Bulmak i\u00e7in fonksiyon<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>Function IsLptPortAvailable(ByVal portNum As Integer) As Boolean\n    ' Dosya numaras\u0131n\u0131 tutacak bir de\u011fi\u015fken tan\u0131mla\n    Dim fnum As Integer\n\n    ' \u00c7al\u0131\u015fma zaman\u0131 hatalar\u0131n\u0131 bast\u0131r\n    On Error Resume Next\n\n    ' Bo\u015f bir dosya numaras\u0131 al\n    fnum = FreeFile\n\n    ' Belirtilen LPT portunu ikili payla\u015f\u0131ml\u0131 eri\u015fim i\u00e7in a\u00e7may\u0131 dene\n    Open \"LPT\" &amp; CStr(portNum) For Binary Shared As #fnum\n\n    ' Portu a\u00e7arken bir hata olup olmad\u0131\u011f\u0131n\u0131 kontrol et\n    If Err = 0 Then\n        ' Port ba\u015far\u0131yla a\u00e7\u0131ld\u0131ysa, portu kapat\n        Close #fnum\n        ' Portun kullan\u0131labilir oldu\u011funu belirten d\u00f6n\u00fc\u015f de\u011ferini True yap\n        IsLptPortAvailable = True\n    End If\n    ' Hata varsa, fonksiyon varsay\u0131lan olarak False d\u00f6necek\nEnd Function\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Portlar\u0131n say\u0131s\u0131n\u0131 bulmak i\u00e7in yukar\u0131daki fonksiyonlar\u0131 \u00e7a\u011f\u0131rmal\u0131y\u0131z.<br>Bu fonksiyonlar\u0131n kullan\u0131lmas\u0131 zorunlu de\u011fildir.<\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">Seri Portlar i\u00e7in<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>Dim count As Integer, i As Integer\n' 1'den 16'ya kadar olan port numaralar\u0131 i\u00e7in d\u00f6ng\u00fc ba\u015flat\nFor i = 1 To 16\n    ' E\u011fer mevcut bir COM portu varsa, sayac\u0131 art\u0131r\n    If IsComPortAvailable(i) Then count = count + 1\nNext\n' Bulunan COM port say\u0131s\u0131n\u0131 mesaj kutusunda g\u00f6ster\nMsgBox count &amp; \" adet seri port bulundu\"<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Paralel Portlar i\u00e7in<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>Dim count As Integer, i As Integer\n\n' 1'den 16'ya kadar olan port numaralar\u0131 i\u00e7in d\u00f6ng\u00fc ba\u015flat\nFor i = 1 To 16\n    ' E\u011fer mevcut bir LPT portu varsa, sayac\u0131 art\u0131r\n    If IsLptPortAvailable(i) Then count = count + 1\nNext\n\n' Bulunan LPT port say\u0131s\u0131n\u0131 mesaj kutusunda g\u00f6ster\nMsgBox count &amp; \" adet paralel port bulundu\"\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">&nbsp;Paralel veya seri portta i\u015flem yapmak i\u00e7in<\/h3>\n\n\n\n<p>&#8216;Ge\u00e7erli Port numaras\u0131 \u00f6\u011frenildikten sonra bu fonksiyon kullan\u0131larak a\u00e7\u0131l\u0131r.<br>fnum de\u011fi\u015fkeni a\u00e7\u0131k oldu\u011fu bilinen port numaras\u0131d\u0131r. Burada sadece LPT i\u00e7in i\u015flem yap\u0131lm\u0131\u015ft\u0131r.<br>COM i\u00e7in sadece gerekli k\u0131s\u0131m de\u011fi\u015ftirilmelidir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Public Sub OpenPort(ByVal PortNum As Integer)\n    ' Dosya numaras\u0131n\u0131 tutmak i\u00e7in bir de\u011fi\u015fken tan\u0131mla\n    Dim fnum As Integer\n    \n    ' Bo\u015f bir dosya numaras\u0131 al\n    fnum = FreeFile\n    \n    ' Belirtilen LPT ba\u011flant\u0131 noktas\u0131n\u0131 \u00e7\u0131kt\u0131 modu ile a\u00e7\n    Open \"LPT\" &amp; CStr(PortNum) For Output As #fnum\n    \n    ' Dosya numaras\u0131n\u0131 global veya mod\u00fcl seviyesindeki bir de\u011fi\u015fkene ata\n    FileNumber = fnum\nEnd Sub\n<\/code><\/pre>\n\n\n\n<p>&#8216;A\u00e7\u0131lan porta string de\u011fi\u015fken bu fonksiyonla g\u00f6nderilir.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Public Sub SendToPort(ByVal PortNum As Integer, ByVal Data As Byte)\n    ' Belirtilen dosya numaras\u0131na (LPT portu) veriyi yaz\n    Write #CStr(FileNumber), Data\nEnd Sub\nPublic Sub ClosePort(ByVal PortNum As Integer)\n    Close #CStr(PortNum)'\u0130\u015fimiz bitti\u011finde portun kapat\u0131lmas\u0131 gereklidir.\nEnd Sub<\/code><\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>VB6 art\u0131k kullan\u0131lmasa da \u00f6\u011frenmesi basit oldu\u011fundan bu \u00f6rneklere yer verilmi\u015ftir. \u00d6zellikle, paralel portlar (LPT) ve seri portlar (COM) gibi donan\u0131m bile\u015fenlerinin nas\u0131l kullan\u0131laca\u011f\u0131 ve programlanaca\u011f\u0131na dair ayr\u0131nt\u0131l\u0131 rehberler sunuyoruz. A\u015fa\u011f\u0131da, seri ve paralel portlar\u0131n kullan\u0131labilirli\u011fini kontrol eden ve mevcut port say\u0131s\u0131n\u0131 bildiren basit bir Visual Basic kod \u00f6rne\u011fi bulabilirsiniz.Paralel ve seri portlar\u0131n var olup [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-934","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/posts\/934","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/digiliner.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=934"}],"version-history":[{"count":2,"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/posts\/934\/revisions"}],"predecessor-version":[{"id":3742,"href":"https:\/\/digiliner.org\/index.php?rest_route=\/wp\/v2\/posts\/934\/revisions\/3742"}],"wp:attachment":[{"href":"https:\/\/digiliner.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=934"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digiliner.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=934"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digiliner.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=934"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}