Etiket: c#
Mart 22nd, 2011
XML dosyalarından XSD şemaları üretmek istediğinizde, Command Promptan, xsd.exe (XML Schema Definition Tool) uygulamasını kullanabilirsiniz. Bunun ile ilgili bir yazı yazmıştım yanlış hatırlamıyorsam. Fakat dinamik olarak şemalar üretmek istediğinizde veya uygulamanıza bu şemaları ürettirmek istediğinizde cmd den komut yazıp, xsd.exe yi kullanmanız uygun olmayacaktır. Bunun yerine aşağıdaki metodu kullanabilirsiniz.
private void GenerateSchema(string filePath)
{
var reader = XmlReader.Create(filePath);
var schema = new XmlSchemaInference();
var schemaSet = schema.InferSchema(reader);
TextWriter writeFile = new StreamWriter("c:\\schema.xsd");
foreach (XmlSchema s in schemaSet.Schemas())
{
s.Write(writeFile);
}
writeFile.Close();
}
Tags: .NeT, c#, cmd, cmd.exe, Generate Schema, Schema Generator, VS, vs.net, XSD, xsd.exe
Posted in .NeT 2008, BizTalk, Yazılım | No Comments »
Mart 4th, 2011
Hazırladığınız uygulamada outlooku kullanarak mail göndermek istiyorsanız öncelikle “Microsoft Outlook 14.0 Object Library” i referans olarak eklemeniz gerekmektedir. 14.0 bilgisayarınızda kurulmuş olan office versiyonudur. Bu rakam değişiklik gösterebilir.

Daha sonra usinglerimize aşağıdaki satırı ilave ediyoruz. Böylece uzun uzun namespaceleri yazmamıza gerek kalmadan Outlook diyerek tüm metodları kullanabiliriz.
using Outlook = Microsoft.Office.Interop.Outlook;
Daha sonra aşağıdaki basit olarak hazırlanmış olan metodu kullanıp şekillendirerek mail gönderimi yaptırabilirsiniz.
private void SendOutlookMail()
{
try
{
Outlook.Application oApp = new Outlook.Application();
Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
oMsg.To = "To Mail Adresleri";
oMsg.CC = "CC deki Mail Adresleri";
oMsg.BCC = "BCC deki Mail Adresleri";
oMsg.Recipients.ResolveAll();
oMsg.Subject = "Mailin Subjecti";
oMsg.Body = "Mailin İçeriği";
//Aşağıdaki satırları attachment göndermek istiyorsanız kullanabilirsiniz. İstemiyorsanız bunlara gerek yok
String sSource = "C:\\xyz.xlsx";
String sDisplayName = "Görünen Dosya İsmi";
int iPosition = (int)oMsg.Body.Length + 1;
int iAttachType = (int)Outlook.OlAttachmentType.olByValue;
Outlook.Attachment oAttach = oMsg.Attachments.Add(sSource, iAttachType, iPosition, sDisplayName);
//Mail gönderilmeden önce kullanıcıya değişiklik yapmak için imkan tanınıyor
oMsg.Display(true);
oAttach = null;
oMsg = null;
oApp = null;
}
catch (Exception e)
{
MessageBox.Show("Hata Oluştu", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Tags: .NeT, .NeT 2010, c#, Interop, Mail Gönderme, Outlook, SendMail, vs.net
Posted in .NeT 2008, Sistem, Yazılım | 2 Comments »
Mart 4th, 2011
Çalışan uygulamanın, exesinin bulunduğu klasörü aşağıdaki şekilde bulabilirsiniz.
using System.IO;
using System.Windows.Forms;
string appPath = Path.GetDirectoryName(Application.ExecutablePath);
Tags: .NeT, .NeT 2010, Application Path, c#, Executable Path, vs.net, Work DIR
Posted in .NeT 2008, Yazılım | No Comments »
Aralık 6th, 2010
string UppercaseWords(string value)
{
char[] array = value.ToLower().ToCharArray();
if (array.Length >= 1)
{
if (char.IsLower(array[0]))
{
array[0] = char.ToUpper(array[0]);
}
}
for (int i = 1; i < array.Length; i++)
{
if (array[i - 1] == ' ')
{
if (char.IsLower(array[i]))
{
array[i] = char.ToUpper(array[i]);
}
}
}
return new string(array);
}
Tags: .NeT, c#, Function, LowerCase, Method, UpperCase, Visual Studio, VS
Posted in .NeT 2008, Yazılım | No Comments »
Ekim 2nd, 2010
Daha detaylı ve görkemli Remote Desktop uygulamaları geliştirmek istiyorsanız bu dll i mutlaka kullanmanız gerekecektir. Bir yere kadar Command Promp üzerinden mstsc ye komut göndererek işlemlerinizi yapabiliyorsunuz. Fakat orada tıkanacağınız aşikar
İlk önce mstscax.dll i bulmanız gerekiyor. Bunu google da aratınca bir sürü siteden indirmeniz mümkün. Bulmakta sıkıntı yaşarsanız bana ulaşın ben mail ile gönderirim.
Daha sonra bu dll i register etmeniz gerekiyor. Bunu Command Prompta
RegSvr32 C:\..\dizin\..\mstscax.dll
yazarak yapabilirsiniz. Aşağıdaki resimde ekran görüntüsünü görebilirsiniz.

Daha sonra Visual Studio ya geliyoruz. Toolbox üzerine sağ tıklayıp Choose Items… A tıklıyoruz.

Açılan ekranda, COM Components tabından, Microsoft RDP Client Control componentlerinden en yeni olanı seçip, OK butonuna tıklıyoruz. Bu işlem sonrasında Toolboxınıza ilgili komponent eklenmiş olacaktır.

Örnek olarak componenti aşağıdaki gibi kullanabilirsiniz.
Örnek Kullanım:
rdpClient.Server = “Server Adınız”;
rdpClient.UserName = “Kullanıcı Adı”;
rdpClient.AdvancedSettings2.ClearTextPassword = “Şifreniz”;
rdpClient.ColorDepth = integer; //8, 15, 16 ya da 24 seçilebilir
rdpClient.DesktopWidth = integer; //genişlik
rdpClient.DesktopHeight = integer; //boy
rdpClient.FullScreen = boolean; //True ya da False seçilebilir.
//ayarlar set edildikten sonra Connect metoduyla servera bağlanıyoruz.
rdpClient.Connect();
Dikkatli Kullanın
Tags: .NeT, c#, command, command prompt, Microsoft, Microsoft RDP Client Control, MSTSCAX.DLL, RDP, RegSvr32, Remote, Remote Desktop, Uzak, Uzak Masaüstü, vs.net
Posted in .NeT 2008, Bilgisayar, Yazılım | 7 Comments »
Ekim 15th, 2009
Cidden kolay bir yol 
Hem ASP.NeT de hem de windows application larda rahatlıkla kullanabilirsiniz.
Yöntem şu :
Aşağıdaki kütüphaneyi ekliyoruz projemize,
using System.Net.NetworkInformation;
Daha sonra bu kütüphanede bulunan Ping ve PingReply sınıflarıyla aşağıdaki gibi işlemimizi yapıyoruz;
Ping p = new Ping();
PingReply pr = p.Send("www.google.com");
Bu komut çalıştıktan sonra response mesajımız pr değişkenine atanmış durumda oluyor.
Aşağıdaki gibi bilgileri çekebilirsiniz;
Adres = pr.Address.ToString();
Buffer = pingReply.Buffer.Length.ToString();
RoundtripTime = pr.RoundtripTime.ToString();
Status = pr.Status.ToString();
TTL = pingReply.Options.Ttl.ToString();
Çok güzel değil mi, bu kadar yardımdan sonra istediğiniz gibi kodunuzu süsleyebilirsiniz
Tags: .NeT, Address, Buffer, c#, DNS Çözümleme, Ping, PingReply, RoundtripTime, Status, vs.net
Posted in Yazılım | No Comments »
Ağustos 27th, 2009
Hep unutuyorum not alayım belki sizin de işinize yarar
string a = (textBox1.Text.Equals("ssss")) ? "Eşit" : "Yanlış";
Tags: c#, IF
Posted in .NeT 2008 | 2 Comments »
Ağustos 15th, 2008
System.Threading.Thread.Sleep(n); // n = milisaniye
//5 saniye bekletmek için
System.Threading.Thread.Sleep(5000);
Tags: c#, thread, vs.net
Posted in .NeT 2008 | 6 Comments »
Ağustos 4th, 2008
C# da Cmd.exe ile bir komut çalıştırmak istiyorsak aşağıdaki komutu kullanabiliriz.
string arguments = “/C C:\\Windows\\xyz.exe -h -blabla”;
System.Diagnostics.Process.Start(“cmd.exe”,arguments);
yok eğer ben cmd.exe falan istemiom direkt bir dosya açaçam diyosanız ise
System.Diagnostics.Process.Open(“blabla.txt”);
komutunu kullanabilirsiniz.
Tags: c#, cmd, cmd.exe, command, prompt, shell, vs.net
Posted in .NeT 2008 | No Comments »