Как уменьшить размер transaction_log?

Для уменьшения размера transaction log в MS SQL Server можно воспользоваться следующими командами:

USE testDB

--Узнаем названия файлов SELECT file_id, name
FROM sys.database_files;

ALTER DATABASE testDB
SET RECOVERY SIMPLE;

--Урезаем размер до 100 Mb DBCC SHRINKFILE(testDB_log, 100)

ALTER DATABASE testDB
SET RECOVERY FULL;

P.S. Для того что бы оценить сколько используется реально места для transaction log выполняем следующие действия в Management Studio <правый крыс> на базу -> Reports -> Standart Reports -> Disk Usage = диаграмма использования дискового пространства.

Currently rated 4.0 by 1 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Как узнать название съемного диска в WM?

В Windows Mobile, для того чтобы выяснить как называется съемный диск в системе можно воспользоваться следующим методом:

private string GetStorageCard()
{
    //initialize the path as an empty string
    string firstCard = "";

    System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("\\");
    System.IO.FileSystemInfo[] fsi = di.GetFileSystemInfos();

    //iterate through them
    for (int x = 0; x < fsi.Length; x++)
    {
        //check to see if this is a temporary storage card (e.g. SD card)
        if ((fsi[x].Attributes & System.IO.FileAttributes.Temporary) == System.IO.FileAttributes.Temporary)
        {
            //if so, return the path
            firstCard = fsi[x].FullName;
        }
    }
    return firstCard;
}

P.S.
Не забываем подключать using System.IO;

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Как скачать файл по http?

Для того что бы скачать файл по протоколу http на C# потребуется написать всего несколько строчек и подключить пространство имен System.Net.

Самый простой, но не самый наглядный способ.

Просто как две строчки написать:

WebClient webClient = new WebClient();
webClient.DownloadFile("http://mysite.com/myfile.txt", @"c:\myfile.txt");


Но никакого отображения процесса загрузки файла не происходит, что конечно же не устраивает нетерпеливых пользователей.More...

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Как получить список всех файлов в директории?

Для реализации этой, казалось бы, тривиальной задачи идеально подходит рекурсия, например вот такая:

List<String> GetAllFiles(String aPath)
{
    List<String> _tmpFiles = new List<string>();
    _tmpFiles.AddRange(Directory.GetFiles(aPath));

    foreach (String dirPath in Directory.GetDirectories(aPath))
    {
        _tmpFiles.AddRange(GetAllFiles(dirPath));
    }

    return _tmpFiles;
}

Но оказывается, в случае, когда требуется просто получить список файлов (не применяя сложных условий) стоит использовать уже реализованные функции, в частности перегруженный вариант функции Directory.GetFiles с тремя параметрами:

Directory.GetFiles(_strPath, "*.*", SearchOption.AllDirectories)

P.S. Не забываем подключить  System.IO;

Currently rated 4.2 by 5 people

  • Currently 4.2/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Как программно вставить изображение в Excel?

Иногда возникает необходимость вставить изображение непосредственно в документ Excel, к сожалению именно в документ, по определенным координатам, а не в конкретную ячейку возможна вставка такого объекта. Далее описано два возможных способа программной вставки картинки.

More...

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,

Как прочитать данные из Excel файла?

Если необходимо просто получить несколько записей из Excel файла, то стоит воспользоваться ранним связыванием. Для этого необходимо подключить Microsoft.Office.Interop.Excel.dll и Office.dll.

More...

Currently rated 3.0 by 1 people

  • Currently 3/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

Как прочитать данные из реестра?

Для того что бы прочитать данные из реестра Windows, например узнать куда установлен MapInfo, необходимо:

using Microsoft.Win32;
private String FRegisterKey = @"SOFTWARE\MapInfo\MapInfo\Professional"
private String FKeyValue = @"ProgramDirectory"
...
if (Registry.LocalMachine.OpenSubKey(FRegisterKey) != null)
{
InfoPath = Registry.LocalMachine.OpenSubKey(FRegisterKey).GetValue(FKeyValue).ToString();
...
}

Что бы записать значение:

Registry.LocalMachine.OpenSubKey([PathToSubKey]).SetValue([Param], [Value]);

P.S. Подробнее тут

Currently rated 4.0 by 1 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Как изменить кодировку строк?

Для преобразования строки из одной кодировки в другую в .Net используется класс System.Text.Encoding.

Например, нам необходимо прочитать текстовый файл, но мы знаем, что текст в нем хранится в кодировке Win1251.
Вот пример как это можно сделать:

 using (StreamReader _sr = new StreamReader(aFileInfo.FullName, Encoding.GetEncoding(1251)))
{
    String _strTmp = _sr.ReadLine()
    . . .
}

Но теперь надо сохранить изменения в тойже кодировке.
Это можно сделать вот так:

using (StreamWriter tw = new StreamWriter(aWriteFile.Create(), Encoding.GetEncoding(1251)))
{
    // Записываем шапку
    tw.WriteLine(String.Format("Проверка записи в кодировке Win1251"));
    . . .
    tw.Close();
}

P.S. Подробнее тут

P.P.S. И еще статья  Джоела Спольски о кодировках

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: , ,

Как изменить региональные настройки?

А конкретнее, как преобразовать строку в число или как заменить точку на запятую, например "2.56", если разделитель разрядов в системе запятая.

Мнимое решение

Double tmp = Double.Parse(str.Replace('.', ','));

т.к. если в системе по умолчанию установленна точка а не запятая то мы опять получим исключение.
More...

Currently rated 1.0 by 1 people

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

Как обновить программу?

Простым вариантом обновления программы может служить bat файл который будет копировать содержимое сетевой папки в локальную, но после него остается командное окно которое портит общий вид...

Альтернативным способом может быть копирование необходимых файлов самой программой при запуске, но заменить запущенное приложение не получится, поэтому необходимо вынести функциональность которая копирует файлы в отдельный проект и из него после копирования запускать основное приложение.

Сначала настроим глобальные переменные (правильнее их получать из xml файла)

#region Data
// Папка с обновлениями
private String FUpdateFolder = @"\\srv\myprog";
// Куда копируем
private String FTargetFolder;
// Что запускаем
private String FRunFile = "myprog.exe";
#endregion

More...

Currently rated 1.0 by 1 people

  • Currently 1/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags: ,