tabloları bağlayacağım, ama çok uzaktan

Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Evet realpereste katılıyorum. Gerçekten de Vb de sorgu tasarımı accessteki gibi değil. Bir ara accesste sorguyu yazıp sql'ini getieip vb'e yapıştırmayı düşünmüştüm :))))
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
alın size kod örnekleri.. Bakalım accesse benziyor mu?


VB.NET ile PDF Yaratma ve İşleme
---------------------------------------------------------------------------------------------------
VB.NET ile 3. Parti yazılımlar kullanarak PDF yaratma, işleme ve çeşitli özelliklerle PDF dosyaları üzerinde yapılan işlemleri örnek kodlar eşliğinde anlatmaya çalışıyoruz.
---------------------------------------------------------------------------------------------------

Makalemde, sizlere VB.NET ile PDF yaratma ve PDF işleme ile ilgili bilgiler sunacağım. Projemize 3. Parti bir DLL ekleme zorunluluğumuz var bu dll’i http://www.tallcomponents.com/default.aspx?id=tallpdf3-download adresinden de çekebilirsiniz. Piyasada sınırsız bu işi yapan DLL ler varken bu firmanın dll’ini seçmemdeki amaç tamamen sınırsız kullanıma açık olmasıdır. Belli bir zaman kısıtlaması olmamasına rağmen deneme sürümü olduğunu uygulamamızda belirtiyor.

Buna ek olarak tamamen ücretsiz zLib’i de önerebilirim bu dll ise tamamen ücretsiz TallComponents’e göre doküman eksikliği biraz var ama source’ları açık olduğu için istediğiniz atraksiyonu yapabilirsiniz. zLib içinde

http://www.componentace.com/zlib_.NET.htm adresini kullanabilirsiniz. Bu makalemde zLib örneklerine değinmeyeceğim.

Projemize referans olarak:

TallComponents.PDF.Layout.DLL dosyasını eklemeniz gerekli.

Ardından çeşitli atraksiyonları PDF üzerinde gerçekleştirebiliriz.

Bir PDF dosyası yaratmak için aşağıdaki kodu kullanabilirsiniz:



Imports System
Imports System.IO
Imports TallComponents.PDF.Layout
Imports TallComponents.PDF.Layout.Paragraphs
Namespace TallComponents.Samples.TallPDF

Public Class HelloWorld

Shared Sub Main()
' Using
Dim file As FileStream = New FileStream("..\..\HelloWorld.pdf", FileMode.Create, FileAccess.Write)
Try
Dim document As Document = New Document
Dim section As Section = document.Sections.Add
Dim textParagraph As TextParagraph = New TextParagraph
section.Paragraphs.Add(textParagraph)
Dim fragment As Fragment = New Fragment
fragment.Text = "Hello world!"
textParagraph.Fragments.Add(fragment)
document.Write(file)
Finally
CType(file, IDisposable).Dispose()
End Try
End Sub
End Class
End Namespace


Hazır bulunan bir text dosyası veya text üzerinde biçimsel işlemler yaparak PDF olarak kaydetmek çok basit metodlarla mümkün kodun açıklaması kodun içinde yapılmıştır.



Imports System
Imports System.IO
Imports TallComponents.PDF.Layout
Imports TallComponents.PDF.Layout.Paragraphs
Namespace TallComponents.Samples.TallPDF

Public Class TextFormatting
Const text As String = "With TallPDF.NET you can create PDF documents " + "by building an instance of the TallPDF.NET Document " + "Object Model. The TallComponents team has produced " + "a DOM that is extremely intuitive and yet powerful. " + "This allows you to create both simple and complex " + "documents fast."

Shared Sub Main()
' Using
Dim file As FileStream = New FileStream("..\..\TextFormatting.pdf", FileMode.Create, FileAccess.Write)
Try
Dim document As Document = New Document
Dim section As Section = document.Sections.Add
section.PageSize = PageSize.A4
Dim textParagraph As TextParagraph
section.Paragraphs.Add(CreateTextParagraph("TextParagraph with default properties:"))
section.Paragraphs.Add(CreateTextParagraph(text, System.Drawing.Color.Blue))
section.Paragraphs.Add(CreateTextParagraph("textParagraph.HorizontalAlignment = HorizontalAlignment.Right"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.HorizontalAlignment = HorizontalAlignment.Right
section.Paragraphs.Add(textParagraph)
section.Paragraphs.Add(CreateTextParagraph("textParagraph.HorizontalAlignment = HorizontalAlignment.Center"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.HorizontalAlignment = HorizontalAlignment.Center
section.Paragraphs.Add(textParagraph)
section.Paragraphs.Add(CreateTextParagraph("textParagraph.Justified = true"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.Justified = True
section.Paragraphs.Add(textParagraph)
section.Paragraphs.Add(CreateTextParagraph("textParagraph.LineSpacing = 5"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.LineSpacing = 5
section.Paragraphs.Add(textParagraph)
section.Paragraphs.Add(CreateTextParagraph("textParagraph.FirstLineIndentation = 20"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.FirstLineIndentation = 20
section.Paragraphs.Add(textParagraph)
section.Paragraphs.Add(CreateTextParagraph("textParagraph.HangIndentation = 20"))
textParagraph = CreateTextParagraph(text, System.Drawing.Color.Blue)
textParagraph.HangIndentation = 20
section.Paragraphs.Add(textParagraph)
document.Write(file)
Finally
CType(file, IDisposable).Dispose()
End Try
End Sub

Private Shared Function CreateTextParagraph(ByVal text As String) As TextParagraph
Return CreateTextParagraph(text, System.Drawing.Color.Black)
End Function

Private Shared Function CreateTextParagraph(ByVal text As String, ByVal textcolor As System.Drawing.Color) As TextParagraph
Dim paragraph As TextParagraph = New TextParagraph
Dim textFragment As Fragment = New Fragment(text)
textFragment.TextColor = textcolor
paragraph.Fragments.Add(textFragment)
paragraph.SpacingAfter = 10
Return paragraph
End Function
End Class
End Namespace

Aynı zamanda XML dosyalarınıda PDF formatına çevirebiliyoruz.
Örnek XML:
'<'document author="Volkan"'>'
'<'section pagesize="Letter"'>'
'<'!-- &#304;&#231;erik... --'>'
'<'/section'>'
'<'/document'>'

XML dosyam&#305;z&#305; PDF &#231;eviren kod blo&#287;u,

Dim xml As XmlDocument = New XmlDocument
xml.Load("topdf.xml")
Dim document As Document = New Document
document.Read(xml.DocumentElement)
Dim file As FileStream = New FileStream("out.pdf", FileMode.Create)
document.Write(file)

Burada sayamayaca&#287;&#305;m&#305;z kadar &#231;e&#351;itli &#246;rneklerle k&#252;t&#252;phane kullan&#305;m&#305;m&#305;z&#305; ve yapacaklar&#305;m&#305;z&#305; geni&#351;letebiliriz. Makalemin ba&#351;&#305;nda verdi&#287;im linkten &#231;ekti&#287;iniz zLib ile ilgili bir &#246;rnek yapman&#305;n &#246;nemlili&#287;ini vurgulamak isterim her componenet de&#287;i&#351;ik aray&#252;zlerle gelmekte. Yine zLib&#8217;i referans olarak eklememiz gerekiyor.

Volkan Atasever
volkan.atasever@msakademik.net
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Bir tane daha....



Print
WMI ile Bilgisayar&#305;n Bilgilerini Toplama 12.03.2006 16:38:00

Kategori : Visual Basic .NET

&#214;zet :
WMI (Windows Management Instrumentation) ile bilgisayar&#305;m&#305;za ba&#287;l&#305; t&#252;m donan&#305;m hakk&#305;nda bilgi toplayabiliriz. &#214;ncelikle bunu neden ve sonra da nas&#305;l kullanaca&#287;&#305;m&#305;z&#305; g&#246;rece&#287;iz .

Bilgisayar hakk&#305;nda toplad&#305;&#287;&#305;m&#305;z bilgileri programlar&#305;m&#305;z&#305; kullan&#305;c&#305; bilgisayar&#305;na kurarken kullanabiliriz. Diyelim ki program&#305;m&#305;z&#305;n sa&#287;l&#305;kl&#305; &#231;al&#305;&#351;abilmesi i&#231;in belirledi&#287;imiz bir minimum konfig&#252;rasyona ihtiya&#231; var ve kullan&#305;c&#305; makinesinde bu ihtiyaca cevap verecek donan&#305;m var m&#305; bilmemiz gerek. Ya da program&#305;m&#305;za &#351;ifre koyaca&#287;&#305;z ve bunu genellikle hdd seri numaras&#305;ndan yapar&#305;z. Bunlar gibi pek &#231;ok &#351;eyi rahatl&#305;kla yapabilece&#287;imiz k&#305;saca bilgisayar&#305;m&#305;z&#305;n donan&#305;m&#305; hakk&#305;ndaki t&#252;m bilgileri toplayabilece&#287;imiz bir y&#246;ntem. &#350;imdi de nas&#305;l yapaca&#287;&#305;m&#305;z k&#305;sm&#305;na yani kodlamaya ve icraata ge&#231;elim.



WMI kullanabilmek i&#231;in &#246;nce k&#252;t&#252;phanemizden ilgili namespace eklemesini yapal&#305;m referanslardan eklemezsek bu namespace gelmiyor &#246;nce referanslardan ekleyiniz..



Imports System.Management



Daha sonra kodlamada kolayl&#305;k olmas&#305; a&#231;&#305;s&#305;ndan kodumuzu bir s&#305;n&#305;f i&#231;ine yaz&#305;yoruz ve s&#305;n&#305;f&#305;m&#305;z&#305;n i&#231;ine geriye istedi&#287;imiz de&#287;erleri d&#246;nd&#252;ren fonksiyonlar&#305;m&#305;z&#305; yaz&#305;yoruz. B&#246;ylece ana formumuzun kodunu da kalabal&#305;ktan kurtar&#305;yor ve OOP (Object Oriented Programming) yasam&#305;za da sad&#305;k kal&#305;yoruz.



A&#351;a&#287;&#305;daki foksiyon bize string olarak cpu ad&#305;n&#305; verecektir. Dikkat ederseniz burada bir d&#246;ng&#252; var o da birden fazla i&#351;lemcili makineler de olabilece&#287;i i&#231;indir ve ayn&#305; &#351;ey pek &#231;ok par&#231;ada m&#252;mk&#252;n. Mesela ekran kart&#305;, hdd .



Asl&#305;nda yapt&#305;&#287;&#305;m&#305;z i&#351;lemler t&#252;m fonksiyonlarda hemen hemen ayn&#305;. &#214;ncelikle managementClass dan bilgisini alaca&#287;&#305;m&#305;z cihaz&#305;n s&#305;n&#305;f&#305;n&#305; yarat&#305;yoruz. Sonra bu par&#231;alar&#305;n (birden fazla ise) tutuldu&#287;u koleksiyonu yarat&#305;yoruz. Son olarak da bu koleksiyon i&#231;indeki t&#252;m par&#231;alar i&#231;in bir d&#246;ng&#252; yarat&#305;p o par&#231;an&#305;n bize laz&#305;m olan bilgisini al&#305;yoruz. Mesela ilk fonksiyonda ben CPU ad&#305;n&#305; alm&#305;&#351;&#305;m. &#8220;Intel P4 3.0 .. &#8221; gibi.



Public Function Cpu() As String

Dim isim As String

Dim CpuSinif As New ManagementClass("Win32_Processor")

Dim CpuKoleksiyon As ManagementObjectCollection = CpuSinif.GetInstances

Dim CpuNesne As ManagementObject

For Each CpuNesne In CpuKoleksiyon

isim = CStr(CpuNesne("Name"))

Next CpuNesne

Return isim

End Function



A&#351;a&#287;&#305;daki fonksiyon bize yine string olarak Ram boyutunu MB cinsinden d&#246;nd&#252;r&#252;r.



Public Function Ram() As String

Dim toplamRam As Integer = 0

Dim RamSinif As New ManagementClass("Win32_PhysicalMemory")

Dim RamKoleksiyon As ManagementObjectCollection = RamSinif.GetInstances

Dim RamNesne As ManagementObject

For Each RamNesne In RamKoleksiyon

toplamRam += CType(CType(RamNesne("Capacity"), UInt64).ToString, Integer)

Next

Return CStr((toplamRam / 1024) / 1024)

End Function



Bu fonsiyonda ise bilgisayar&#305;m&#305;za tak&#305;l&#305; olan hdd lerin partitionlar&#305;n&#305; ve boyutlar&#305;n&#305; GB olarak bir hashtablosu halinde d&#246;nd&#252;rece&#287;iz. D&#246;necek sonu&#231; :

&#8220;c,40,15 &#8220; , Anlam&#305; Partition ad&#305; c, alan&#305; 40Gb ve bo&#351; alan 15Gb . Burada mediaType de&#287;erini de inceliyoruz. Bunun nedeni logicalDisk al&#305;rken koleksiyonumuza o anda tak&#305;l&#305; usb bellek tipi diskler varsa onlar&#305;n da fonksiyondan de&#287;er olarak d&#246;nd&#252;r&#252;lmesini engellemek. Burada &#351;art de&#287;i&#351;kenimizin de&#287;erinin &#8220;Fixed hard disk media&#8221; olmas&#305;, o zamna hdd partition oldu&#287;unu anl&#305;yoruz.



Public Function DiskBoyutlari() As Hashtable

Dim hddHashTablo As New Hashtable

Dim diskClass As New System.Management.ManagementClass("Win32_LogicalDisk")

Dim disks As System.Management.ManagementObjectCollection = diskClass.GetInstances()

Dim disk As System.Management.ManagementObject

Dim isim As String

Dim boyut As System.UInt64

Dim bosAlan As System.UInt64

Dim pnpDeviceIDsi As String

Dim sayacDriver As Integer = 0



For Each disk In disks

pnpDeviceIDsi = CType(disk("MediaType"), UInt32).ToString

isim = CStr(disk("Name"))

boyut = disk("Size")

bosAlan = disk("FreeSpace")

If CType(boyut, UInt64).ToString <> "0" AndAlso pnpDeviceIDsi = "12" Then '12 nin anlam&#305;: Fixed hard disk media

hddHashTablo.Add(sayacDriver, isim & "," & Fix((((Convert.ToDouble(CType(boyut, System.UInt64)) / 1024) / 1024) / 1024)).ToString & "," & Fix((((Convert.ToDouble(CType(bosAlan, System.UInt64)) / 1024) / 1024) / 1024)).ToString)

sayacDriver += 1

End If

Next disk

Return hddHashTablo

End Function



Burada bilgisayardaki seri portlar&#305;n adedini d&#252;nd&#252;r&#252;yoruz.



Public Function SeriPortAdet() As Integer

Dim seriPortSinif As New Management.ManagementClass("Win32_SerialPort")

Dim seriPortKoleksiyon As Management.ManagementObjectCollection = seriPortSinif.GetInstances

Dim seriPortNesne As Management.ManagementObject

Dim portSayisi As Integer = 0



For Each seriPortNesne In seriPortKoleksiyon

portSayisi += 1

Next seriPortNesne

Return portSayisi

End Function



Burada bilgisayara tan&#305;t&#305;lm&#305;&#351; olan t&#252;m network ve direk ba&#287;l&#305; yaz&#305;c&#305;lar&#305; g&#246;rebiliriz.



Public Function printers() As Hashtable

Dim yaziciHash As New Hashtable

Dim printerSinif As New Management.ManagementClass("Win32_Printer")

Dim printerKoleksiyon As Management.ManagementObjectCollection = printerSinif.GetInstances

Dim printerNesne As Management.ManagementObject

Dim printerSayac As Integer = 0

For Each printerNesne In printerKoleksiyon

yaziciHash.Add(printerSayac, printerNesne("Name"))

printerSayac += 1

Next printerNesne

Return yaziciHash

End Function



Program&#305;n &#246;rnek ekran &#231;&#305;kt&#305;s&#305; a&#351;a&#287;&#305;dakine benzer olacakt&#305;r.



.



Yukar&#305;daki &#246;rnekler geni&#351;letilebilir , biraz msdn i kar&#305;&#351;t&#305;rmak yeterli. Miskin kodcular i&#231;in bu makaledeki &#246;rne&#287;in tam kodu a&#351;a&#287;&#305;da mevcuttur.


--------------------------------------------------------------------------------
Yazgelistir.com
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
valla &#231;ok zor olacak gibime geliyor.. ama olacak in&#351;allah :)))
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
olacak.. emin olun birlikten kuvvet do&#287;ar.. kolayl&#305;k olarak herhalde bug&#252;ne kadar access gibisi olmad&#305; her istedi&#287;ini mutlaka yap&#305;veriyorsun, ama ne yapal&#305;m yenilere ayak uydurmam&#305;z gerek..
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
bak g&#246;r&#252;ld&#252;&#287;&#252; gibi b&#252;t&#252;n b&#252;y&#252;k projeler .net yap&#305;l&#305;yormu&#351;.. : )))) yeni54 nerde yaw
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
alla alla kimmi&#351; bu mehmet nuri &#231;ankaya vaybe..
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
adam microsoftta yaz&#305;l&#305;m uzman&#305;.. &#199;ok b&#252;y&#252;k projeler yapm&#305;&#351; ama. Mesela arena bilgisayara yapt&#305;klar&#305; s&#252;per...
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Bilgi Payla&#351;&#305;ld&#305;k&#231;a Artar" vizyonu ile &#246;&#287;rendi&#287;im bilgileri payla&#351;mak i&#231;in yazm&#305;&#351; oldu&#287;um kitaplar a&#351;a&#287;&#305;dad&#305;r. diye yazm&#305;&#351;.. Tam bizim foruma laz&#305;m bu adam :)))
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
Ben sana bir elma versem, sen bana bir elma versen, bende bir elma, sende bir elma olur.
Ben sana bir bilgi versem, sen bana bir bilgi versen, bende iki B&#304;LG&#304;, sende iki B&#304;LG&#304; olur." ( George Bernard Shaw )
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
: )))))))))))))))))))))))))))))) bence ka&#231;&#305;ral&#305;m bo&#351;ver elmay&#305;.. bizim foruma gerekli..
 
Katılım
30 Ocak 2006
Mesajlar
937
Excel Vers. ve Dili
Access 2003
vb nokta net studio indiriyorum &#351;u anda emuleden. (&#246;zellikle b&#246;yle yazd&#305;m.. anlars&#305;n ya:)))
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
yaz&#305;lanlar&#305; ilgiyle okudum.

vb.net e do&#287;ru bir gidi&#351; var. ben hala c# diye &#305;srar ediyorum.

bu arada say&#305;n mehmetdemiral, uzunca bir zaman sonra (ya da k&#305;sa bir zaman:)) yapabilece&#287;imiz &#246;rnekleri eklemi&#351;. ufkumuz a&#231;&#305;ls&#305;n diye:)

madem adam ka&#231;&#305;racaz, bika&#231; ki&#351;i daha ekleyelim ne dersiniz?
 
Katılım
14 Ağustos 2007
Mesajlar
291
Excel Vers. ve Dili
office 2003, sql server
g&#252;nayd&#305;nlar,
c# den sapmayacaz arkada&#351;lar vb.net te ayn&#305; pakette ya ona da ara ara bakar&#305;z a&#231;&#305;s&#305;ndan ve mehmet karde&#351;imizin g&#246;nl&#252; ho&#351; olsun diye : )))
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
az &#246;nce, c# m&#305; vb.net mi diye bir arama yapt&#305;m.

profesyonel anlamda u&#287;ra&#351;&#305;lacaksa c# tercih edilmeli sonucunu &#231;&#305;kard&#305;m.

bu arada

http://www.kodyaziyorum.com/printer_friendly_posts.asp?TID=113

da, t&#252;rk&#231;e c# kitab&#305;ndan bahsediyor.
(&#351;irkette rapid e giri&#351; yasak oldu&#287;u i&#231;in link k&#305;r&#305;k m&#305; de&#287;il mi bilemiyorum)
 

beab05

Özel Üye
Katılım
19 Mart 2007
Mesajlar
1,418
Excel Vers. ve Dili
Office 2013
Emule ya da torrent kullan&#305;n vs 2005 pro .. Bu arada sorgu tasar&#305;m&#305; yapmak accessten zor de&#287;il daha kolay siz yanl&#305;&#351; yerlere bakt&#305;n&#305;z galiba ;)
 
Üst