C# Regedit de Outlook ayarlarını düzenleme kodu

Selamun aleykum
Program regedit de bulunan outlook profilinde verdiğiniz değerlere göre değişiklik yapar.
Geliştirilmeye açık olduğundan programın açık kaynak koduna Buradan erişebilirsiniz.
Outlook un versiyona göre regedit kayıtları farklı yerlerdedir.
Outlook 2007 için alttaki yoldayken.

HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Windows Messaging Subsystem\\Profiles\\Outlook\\9375CFF0413111d3B88A00104B2A6676

Outlook 2013 için ise alttaki yoldadır.

HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Office\\15.0\\Outlook\\Profiles\\Outlook\\9375CFF0413111d3B88A00104B2A6676

Programı geliştirirken bunlara dikkat ettiğiniz taktirde sorun yaşamazsınız.
Örnek kod da outlook 2007 ve outlook 2013 için office365 ayarları yapmak için ayarlanmıştır.
yararlı olması dileğiyle

C# Jdownloaderın folder watch eklentisi için örnek kod

Merhabalar Bu gün c# la jdownloaderin folder watch eklentisi için nasıl otomatik dosyalar oluşturabiliriz onu göstermeye çalışacağım.Projenin kodları GitHub adresinde.jdfolder
Örnek uygulamamız verilen youtube kanalının video linklerini çekip jdownloader a indirmesi için ekler.

Facebook api ile albüm oluşturma

Merhaba arkadaşlar bu yazıda sizlere facebook api ile nasıl albüm oluşturulur onun örnek kodunu paylaşacağım.
Php sdk ile albüm oluşturabilmeniz için uygulamaya ‘user_photos’ iznini vermiş olmanız lazım(veya tanımlamış).
örnek kodlara geçecek olursak.

<?php
session_start();
include('src/Facebook/autoload.php');
$fb = new Facebook\Facebook([
  'app_id' => 'Uygulama idniz',
  'app_secret' => 'secret_key',
  'default_graph_version' => 'v2.2',
  ]);
$fb->setDefaultAccessToken('uygulamaya user_photos izni verilmiş access token');

$album_id=$fb->post("/me/albums", array('name'=>'Örnek','message'=>'Uygulama ile oluşturuldum.'))->getDecodedBody();
echo "Olusturulan albüm id=".$album_id;

Outlook 2013 de nk2 dosyasini import etme

Merhaba arkadaşlar bu aralar firmadaki bilgisayarlarda office uygulamalarını güncelliyoruz.
Güncellerken sorunlarla karşılaşıyoruz.Eski kurulumlarda pst dosyalarını ve nk2 dosyalarını yerlerine koyduğumuzda outlook uygulaması bunları sorun yapmadan görüyordu.
Fakat office 2013 de nk2 dosyalarını yerine koysanız bile ön tanımlı mailler outlook da çıkmıyor.
Bir kaç denemeden sonra arama motorlarına başvurdum.
Microsoft un sitesinde

outlook.exe /importnk2

diye bir kod buldum.
Office 2013 kurulu olan makineye bu komutu çalıştırdan verdiğinizde nk2 dosyasını outlook görüyor ve ön tanımlı mailler mail adreslerini yazarken ekranda çıkıyor.
Bu konu da dikkat etmeniz gereken outlook profiliyle nk2 dosyasının isimlerinin aynı olması.
Nk 2 dosyaları office 2007 ve 2010 için

C:\Users\<kullanıcı ismi>\AppData\Roaming\Microsoft\Outlook

bu kullanılmaktadır.
office 2013 içinse

C:\Users\<kullanıcı ismi>\AppData\Local\Microsoft\Outlook\RoamCache

bu yol kullanılmaktadır.klasörün içindeki *.dat uzantılı streamAutocomplete ile başlayan dosyalarda tutuluyor isimler.
sağlıçakla kalın.

outlook da ekleri toplu kaydetme

Merhaba arkadaşlar uzun uğraşlardan sonra bulduğum kodları sizinle paylaşmak istiyorum.
Aşağıdaki kodları makrodan yeni modül oluşturarak içine yapıştırın ve kaydedin.
Makroyu çalıştırdığınızda sizden ekleri nereye çıkarmak istediğinizi soracak ekleri çıkaracağı dosyayı seçmeniz yeterli
uyarıları dikkate almayın. Arkadaşa şaka olsun diye yazdım.

Option Explicit

Public Sub ExportAttachments()
    Dim objOL As Outlook.Application
    Dim objMsg As Object
    Dim objAttachments As Outlook.Attachments
    Dim objSelection As Outlook.Selection
    Dim i As Long, lngCount As Long
    Dim filesRemoved As String, fName As String, strFolder As String, saveFolder As String, savePath As String
    Dim alterEmails As Boolean, overwrite As Boolean
    Dim result
    Dim sayi As Integer
   
   
    saveFolder = BrowseForFolder("Select the folder to save attachments to.")
    If saveFolder = vbNullString Then Exit Sub
   
    result = MsgBox("Emaillerini silecegim hala benimle oynamak istiyor musun? " & vbNewLine & _
    "(Saka yaptim :) )", vbYesNo + vbQuestion)
    alterEmails = (result = vbYes)
   
    Set objOL = CreateObject("Outlook.Application")
    Set objSelection = objOL.ActiveExplorer.Selection
   
    For Each objMsg In objSelection
        If objMsg.Class = olMail Then
            Set objAttachments = objMsg.Attachments
            lngCount = objAttachments.Count
            If lngCount > 0 Then
                filesRemoved = ""
                For i = lngCount To 1 Step -1
                    fName = objAttachments.Item(i).FileName
                    savePath = saveFolder & "" & fName
                    overwrite = False
                    While Dir(savePath) <> vbNullString And Not overwrite
                        sayi = Rnd(10000)
                       
                       
                       
                        Dim newFName As String
                        newFName = CStr(sayi) + fName
                        If newFName = vbNullString Then GoTo skipfile
                        If newFName = fName Then overwrite = True Else fName = newFName
                        savePath = saveFolder & "" & fName
                    Wend
                   
                    objAttachments.Item(i).SaveAsFile savePath
                   
               
skipfile:
                Next i
               
                If alterEmails Then
                    filesRemoved = "<b>Ramazan Burdaydı :)</b>: " & filesRemoved & "<br><br>"
                   
                    Dim objDoc As Object
                    Dim objInsp As Outlook.Inspector
                    Set objInsp = objMsg.GetInspector
                    Set objDoc = objInsp.WordEditor

                    objMsg.HTMLBody = filesRemoved + objMsg.HTMLBody
                    objMsg.Save
                End If
            End If
        End If
    Next
   
ExitSub:
    Set objAttachments = Nothing
    Set objMsg = Nothing
    Set objSelection = Nothing
    Set objOL = Nothing
End Sub

Function formatSize(size As Long) As String
    Dim val As Double, newVal As Double
    Dim unit As String
   
    val = size
    unit = "bytes"
   
    newVal = Round(val / 1024, 1)
    If newVal > 0 Then
        val = newVal
        unit = "KB"
    End If
    newVal = Round(val / 1024, 1)
    If newVal > 0 Then
        val = newVal
        unit = "MB"
    End If
    newVal = Round(val / 1024, 1)
    If newVal > 0 Then
        val = newVal
        unit = "GB"
    End If
   
    formatSize = val & " " & unit
End Function

'Function purpose:  To Browser for a user selected folder.
'If the "OpenAt" path is provided, open the browser at that directory
'NOTE:  If invalid, it will open at the Desktop level
Function BrowseForFolder(Optional Prompt As String, Optional OpenAt As Variant) As String
    Dim ShellApp As Object
    Set ShellApp = CreateObject("Shell.Application").BrowseForFolder(0, Prompt, 0, OpenAt)

    On Error Resume Next
    BrowseForFolder = ShellApp.self.Path
    On Error GoTo 0
    Set ShellApp = Nothing
     
    'Check for invalid or non-entries and send to the Invalid error handler if found
    'Valid selections can begin L: (where L is a letter) or \\ (as in \\servername\sharename.  All others are invalid
    Select Case Mid(BrowseForFolder, 2, 1)
        Case Is = ":": If Left(BrowseForFolder, 1) = ":" Then GoTo Invalid
        Case Is = "": If Not Left(BrowseForFolder, 1) = "" Then GoTo Invalid
        Case Else: GoTo Invalid
    End Select
     
    Exit Function
Invalid:
     'If it was determined that the selection was invalid, set to False
    BrowseForFolder = vbNullString
End Function

Function BrowseForFile(Optional Prompt As String, Optional OpenAt As Variant) As String
    Dim ShellApp As Object
    Set ShellApp = CreateObject("Shell.Application").BrowseForFolder(0, Prompt, 16 + 16384, OpenAt)
   
    On Error Resume Next
    BrowseForFile = ShellApp.self.Path
    On Error GoTo 0
    Set ShellApp = Nothing
     
    'Check for invalid or non-entries and send to the Invalid error handler if found
    'Valid selections can begin L: (where L is a letter) or \\ (as in \\servername\sharename.  All others are invalid
    Select Case Mid(BrowseForFolder, 2, 1)
        Case Is = ":": If Left(BrowseForFolder, 1) = ":" Then GoTo Invalid
        Case Is = "": If Not Left(BrowseForFolder, 1) = "" Then GoTo Invalid
        Case Else: GoTo Invalid
    End Select
     
    Exit Function
Invalid:
     'If it was determined that the selection was invalid, set to False
    BrowseForFile = vbNullString
End Function

ubuntu da php ile MsSql bağlantı kurma

Merhaba bu yazıda ubuntu üzerinde php ile Ms Sql bağlantı kurabilmek için gereken kurulumu yapmayı anlatacağım.
Ubuntu üzerinde terminal açılır ve kod tagının içinde bulunan komut yazılır.

sudo apt-get install php5-sybase

Kurulumun aktif olabilmesi için apache servisini yaniden başlatmamız gerekiyor.

sudo /etc/init.d/apache2 restart

örnek kod

<?php
//baglanti kuruyoruz.
$connect=mssql_connect("host","sa","sifre") or die("baglanti saglanmadi");
//databaseyi seciyoruz.
mssql_select_db("database", $connect);
//sorguyu gonderiyoruz.
$sorgu=mssql_query("select * from tablo");
//sorguyu object olarak aliyoruz.
$row = mssql_fetch_object($sorgu);
//sorguyu yazdiriyoruz.
echo '<pre>';
print_r($row);
echo '</pre>';
?>

yararlı olması dileğiyle.

windows da php ftp_nlist fonksiyonu

Merhaba php de ftp fonksiyonunu kullanarak bağlantı yaptığımızda dosyaları listeleyebilmemiz için

ftp_pasv(ftp baglanti degisgeni,TRUE)

komutunu yazarak listeleme yapabiliyoruz.
Bunun sebebi güvenlik duvarının arkasından bağlantı kuruyor iseniz bu fonksiyonu kullanmadan listeleme yapamıyorsunuz.
Örnek kod

<?php
set_time_limit(0);
$host="ftp hostunuz";
$port='21';
$user="kullanıcı ismi";
$pass="şifre";
$_timeout=15;
$errno=null;
$err=null;
$_conn=false;
$filelist=array();
if(!defined('FTP_NATIVE')){
    define('FTP_NATIVE',(function_exists('ftp_connect'))? 1 : 0);
}
if(FTP_NATIVE){
    $_conn=@ftp_connect($host,$port,$_timeout);
    if($_conn===false){
        echo 'baglanti yok <br />';
    }else{
        echo 'baglandim <br />';
    }
ftp_set_option($_conn, FTP_TIMEOUT_SEC, $_timeout);
    if(@ftp_login($_conn, $user, $pass)===false){
        echo 'login alamadim.<br />';
     
    }else{
        echo 'kullanici giris yapti <br />';
       
    }
   
    echo 'bulundugum dizin '.  ftp_pwd($_conn);
    ftp_pasv($_conn, TRUE);
    $buff=ftp_nlist($_conn, ftp_pwd($_conn));
    echo '<pre>';
    print_r($buff);
    echo '</pre>';
   
}?>

yararlı olması dileğiyle.

Yazıcının varsayılan seçilmemesi

Windows 8 bilgisayarıma hp yazıcımı eklediğimde yazıcı dan sınama sayfası yazdırabilirken normal çıktı alamıyor ve yazıcıyı varsayılan olarak seçemiyordum.
Sorunun uğraşlarımdan sonra regedit de HKEY_CURRENT_USER > Software > Microsoft > Windows >currentversion un izinlerinden kaynaklandığını tespit ettim ve oraya sistem kullanıcılarını ekledim.
Bilgisayarımı yeniden başlattığımda yazıcı varsayılan olarak geldi.

Php formdan gelen emailleri kontrol etme

Php dilinde formdan gelen bilgileri düzenli ifadeler vb. yollarla filtrelerden geçirebileceğimiz gibi filter_var metodunu da filtreleyebiliriz.

Peki bu methodu nasıl kullanabiliriz.
ilk olarak form sayfamızı yapalım.

<html>
    <head>
    <title>Kayıt Sayfası</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
    <form action="denetle.php" method="POST" >
        <table border="1">
            <tr><td>isim :</td><td><input type="text" name="isim"/></td></tr>
            <tr><td>Soyisim :</td><td><input type="text" name="soyisim"/></td></tr>
            <tr><td>Email :</td><td> <input type="email" name="email"/></td></tr>
        </table>
</form>
</body>
</html>

Form dan gelen veriyi işleyerek kaydedecek php dosyamızı oluşturalım.

<?php
$email=$_POST['email'];
if(filter_var($email,FILTER_VALIDATE_EMAIL)){
echo "dogru";}
else{
    echo "dogru degil";
}
?>

yazmış olduğumuz php kodu ile form dan gelen verinin e-mail olarak girilip girilmediğinin kontrolunu sağlayabiliriz.