SDev.Pro - разработка на заказ

http://sdev.pro - это:

1) Разработка программного обеспечения

Мы используем платформы ASP.NET MVC, LAMP, Atmel, Android, iOS, DirectShow и базы данных MS SQL, Oracle, PostgreSQL, а также облака на MS Azure и Amazon AWS для реализации любых Ваших идей.

2)Внедрение программного обеспечения

Мы предлагаем настройку и доработку решений на базе систем электронного документооборота MS SharePoint Server, геоинформационных систем на GeoServer, систем отчетности на MS SQL Reporting Services, а также облачных решений на MS Office 365.

http://sdev.pro

Jul 31, 2009

Dev Tips: Сборка, упаковка и публикация проектов на FTP

Приведу ниже пример небольшой уловки по сборке и публикации .NET проектов на ваш FTP-сервер. Естественно, с помощью данного метода можно публиковать что угодно.

Метод состоит из 4-х этапов:

  1. Запуск скрипта publish.bat c параметром – номером сборки;
  2. Сборка проекта с помощью Visual Studio;
  3. Упаковка проекта с помощью бесплатного 7zip;
  4. Публикация архива на ftp.

publish.bat:

rem Удаляем все архивы
del Manager\bin\Release\*.zip

rem Собираем проект
"%VS90COMNTOOLS%..\IDE\devenv" Manager.sln /Rebuild Release

cd Manager\bin\Release

rem Пакуем необходимые файлы в архив с помощью бесплатного 7zip
..\..\..\Utils\7zip\7za.exe a Release%1.zip Test.exe
..\..\..\Utils\7zip\7za.exe a Release%1.zip Manager.exe
..\..\..\Utils\7zip\7za.exe a Release%1.zip template.doc

cd ..\..\..\

rem Запускаем ftp.exe с текущим файлом в качестве параметра
ftp -s:%0.bat
goto done
lcd Manager\bin\Release
open ftp.example.com
user
password
cd /domains/example.com/public_html/MainReleases
prompt
binary
mput *.zip
bye
:done

Удачи :)

Jul 29, 2009

Блог Alex Zambelli: Silverlight, streaming media, Windows Media, VC-1, H.264

Обращаю Ваше внимание на блог Алекса Замбелли (Alex Zambelli), посвященный технологиям Silverlight, streaming media, Windows Media, VC-1, H.264.
Ссылка на блог: http://alexzambelli.com/blog/

Expression Encoder 3.0 SDK: Склеивание медиафайлов

Добрались наконец-то руки до Microsoft Expression Encoder 3.0. Подробнее о продукте можете узнать по ссылке http://blogs.msdn.com/kichinsky/archive/2009/07/23/9846410.aspx .

Советую обратить внимание на .NET API. Он прост и удобен. Приведу небольшой локализованный примерчик из SDK для наглядности:

using System;
using Microsoft.Expression.Encoder;
using Microsoft.Expression.Encoder.Profiles;

namespace MergeMedia
{
/// <summary>
/// Пример последовательного склеивания нескольких медиафайов в один
/// </summary>
class Program
{
/// <summary>
/// Точка входа
/// </summary>
/// <param name="args">аргументы командной строки</param>
static void Main(string[] args)
{
if (args.Length < 2)
{
// Используйте командную строку для задания имен входных медиафайлов
Console.WriteLine("Использование: MergeMedia <MediaFile> <MediaFile> ...");
return;
}

// Создание job и MediaItem для выходного медиафайла
Job job = new Job();
MediaItem mediaItem = new MediaItem(args[0])
{
OutputFormat = new WindowsMediaOutputFormat()
};

// Задание профилей

// Использование видеопрофиля источника, если это возможно
mediaItem.OutputFormat.VideoProfile =
mediaItem.SourceVideoProfile ??
new AdvancedVC1VideoProfile
{
Size = mediaItem.MainMediaFile.VideoStreams[0].VideoSize,
Bitrate = new ConstantBitrate(1000)
};

// Использование аудиопрофиля источника, если это возможно
mediaItem.OutputFormat.AudioProfile =
mediaItem.SourceAudioProfile ?? new WmaAudioProfile();

// Добавление источников
job.MediaItems.Add(mediaItem);
for (int i=1; i<args.Length; i++)
{
mediaItem.Sources.Add(new Source(args[i]));
}

// Установка callback-функции отображения прогресса
job.EncodeProgress
+= OnProgress;

// Задание выходной директории.
job.OutputDirectory = @"C:\output";

// Кодировка
job.Encode();
}

/// <summary>
/// Сallback-функция прогресса
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
static void OnProgress(object sender, EncodeProgressEventArgs e)
{
Console.WriteLine(e.Progress);
}
}
}