Etiket: vs.net
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 »
Mart 4th, 2011
Bir datatable’ın Column.DataType propertysini aşağıdaki gibi belirleyebilirsiniz.
String
DataColumn colString = new DataColumn(“StringCol”);
colString.DataType = System.Type.GetType(“System.String”);
myTable.Columns.Add(colString);
Int32
DataColumn colInt32 = new DataColumn(“Int32Col”);
colInt32.DataType = System.Type.GetType(“System.Int32″);
myTable.Columns.Add(colInt32);
Boolean
DataColumn colBoolean = new DataColumn(“BooleanCol”);
colBoolean.DataType = System.Type.GetType(“System.Boolean”);
myTable.Columns.Add(colBoolean);
TimeSpan
DataColumn colTimeSpan = new DataColumn(“TimeSpanCol”);
colTimeSpan.DataType = System.Type.GetType(“System.TimeSpan”);
myTable.Columns.Add(colTimeSpan);
DateTime
DataColumn colDateTime = new DataColumn(“DateTimeCol”);
colDateTime.DataType = System.Type.GetType(“System.DateTime”);
myTable.Columns.Add(colDateTime);
Decimal
DataColumn colDecimal = new DataColumn(“DecimalCol”);
colDecimal.DataType = System.Type.GetType(“System.Decimal”);
myTable.Columns.Add(colDecimal);
Tags: .NeT, .NeT 2010, Column, Datatable, DataType, vs.net
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 »
Mart 2nd, 2009
Merhabalar!
—————————————————————————————-
Dikkat!!!!
Eğer İnternet çıkışınız sabit (static) ip ise, mümkün olduğu kadar bu kodu çok kullanmamaya çalışın. Google aynı ipden çok fazla sorgu tespit ederse, kendisine zarar verilmeye çalışıldığını zannedip, ipnizi engelleyebilir.
—————————————————————————————-
Google Translate‘in nimetlerinden faydalanmak ister misiniz?? Elbette istersiniz, hazırladığınız bir uygulamada, kendi sitenizde, internete çıkışı olan herhangi bir sistemde bundan seve seve faydalanabilirsiniz. Google Translate sayesinde babylon gibi paralı çeviri hizmetlerinin benzerlerini, çok kolay bir şekilde kendiniz hazırlayabilirsiniz.
Benim sayfa tasarımım aşağıdaki gibi oldu.



Şu anda mevcut bulunan diller ve kodları aşağıdadır: (Bunlar Kaynak dil ve Hedef dil tespitinde kullanılıyor. Google’ a resource gönderirken çevrilecek olan kelime veya cümle ve tr|en gibisinden bir ifade gönderiliyor. Bu Türkçeden İngilizceye anlamına gelmekte…)
- Almanca – de
- Arapça – ar
- Bulgarca – bg
- Çekoslavakça – cs
- Çince (Basit) – zh-CN
- Çince (Karmaşık) – zh-TW
- Danca – da
- Fince – fi
- Fransızca – fr
- Hırvatça – hr
- Hintçe – hi
- Hollandaca – nl
- İngilizce – en
- İspanyolca – es
- İsveççe – sv
- İtalyanca – it
- Japonce – ja
- Korece – ko
- Norveççe – no
- Polonca – pl
- Portekizce – pt
- Romanca – ro
- Rusça – ru
- Türkçe – tr
- Yunanca – el
Kodun tasarımı aşağıdaki gibi, bunu kendinize göre düzenleyebilirsiniz.
Tanımlamalar :
protected Label label;
protected TextBox textBox;
protected DropDownList LangFrom;
protected DropDownList LangTo;
protected Button buton;
Butonun Tıklanma Eventı :
void buton_Click(object sender, EventArgs e)
{
try
{
string fromto = LangFrom.SelectedValue + "|" + LangTo.SelectedValue;
string sonuc = TranslateText(textBox.Text, fromto);
label.Text = sonuc;
}
catch (Exception ex)
{
label.Text = ex.Message;
}
}
Translate Metodu :
public string TranslateText(string input, string languagePair)
{
try
{
string url = string.Format("http://www.google.com/translate_t?hl=en&if=UTF8&text={0}&langpair={1}", input, languagePair);
WebClient webClient = new WebClient();
webClient.Encoding = System.Text.Encoding.UTF8;
string result = webClient.DownloadString(url);
int dan = result.IndexOf("id=result_box") + 22;
int da = result.IndexOf("id=result_box") + 500;
result = result.Substring(dan, da - dan);
result = result.Substring(2, result.IndexOf("</div") - 2);
return result;
}
catch (Exception ex)
{
return ex.Message;
}
Dilleri Ekle Metodları :
private void DilleriEkle()
{
DilEkle("Almanca", "de");
DilEkle("Arapça", "ar");
DilEkle("Bulgarca", "bg");
DilEkle("Çekoslavakça", "cs");
DilEkle("Çince (Basit)", "zh-CN");
DilEkle("Çince (Karmaşık)", "zh-TW");
DilEkle("Danca", "da");
DilEkle("Fince", "fi");
DilEkle("Fransızca", "fr");
DilEkle("Hırvatça", "hr");
DilEkle("Hintçe", "hi");
DilEkle("Hollandaca", "nl");
DilEkle("İngilizce", "en");
DilEkle("İspanyolca", "es");
DilEkle("İsveççe", "sv");
DilEkle("İtalyanca", "it");
DilEkle("Japonca", "ja");
DilEkle("Korece", "ko");
DilEkle("Norveççe", "no");
DilEkle("Polonca", "pl");
DilEkle("Portekizce", "pt");
DilEkle("Romanca", "ro");
DilEkle("Rusça", "ru");
DilEkle("Türkçe", "tr");
DilEkle("Yunanca", "el");
}
private void DilEkle(string p, string p_2)
{
LangFrom.Items.Add(p);
LangFrom.Items[LangFrom.Items.Count - 1].Value = p_2;
LangTo.Items.Add(p);
LangTo.Items[LangTo.Items.Count - 1].Value = p_2;
}
Tags: Dil Çevrimi, Google Translate, Sharepoint, vs.net
Posted in .NeT 2008, Sharepoint | 6 Comments »
Ocak 14th, 2009
Call the metod from OnClick Down Button event;
Code ;
public void MoveDown()
{
int startindex = ListBox2.Items.Count - 1;
for (int i = startindex; i > -1; i--)
{
if (ListBox2.Items[i].Selected)
{
if (i < startindex && !ListBox2.Items[i + 1].Selected)
{
ListItem bottom = ListBox2.Items[i];
ListBox2.Items.Remove(bottom);
ListBox2.Items.Insert(i + 1, bottom);
ListBox2.Items[i + 1].Selected = true;
}
}
}
}
Tags: .NeT, ListBox, vs.net
Posted in .NeT 2008 | No Comments »
Ocak 14th, 2009
Call the metod from OnClick Up Button event;
Code ;
public void MoveUp()
{
for (int i = 0; i < ListBox2.Items.Count; i++)
{
if (ListBox2.Items[i].Selected)
{
if (i > 0 && !ListBox2.Items[i - 1].Selected)
{
ListItem bottom = ListBox2.Items[i];
ListBox2.Items.Remove(bottom);
ListBox2.Items.Insert(i - 1, bottom);
ListBox2.Items[i].Value = bottom.Value;
ListBox2.Items[i - 1].Selected = true;
}
}
}
}
Tags: .NeT, ListBox, vs.net
Posted in .NeT 2008 | No Comments »
Ocak 14th, 2009
KOD:
MailMessage mail = new MailMessage();
public void MailSend(string body, string subject, string strTO)
{
mail = new MailMessage();
mail.To.Add(strTO);
mail.Subject = subject;
mail.From = new MailAddress("from@from.com");
mail.Body = body;
SmtpClient smtp = new SmtpClient("smtp.server.address");
smtp.UseDefaultCredentials = true;
try
{
smtp.Send(mail);
}
catch (Exception ex)
{
//Error
}
}
Tags: .NeT, Mail, vs.net
Posted in .NeT 2008 | No Comments »