Two Pilots™    Главная  |  Навигация  |  Программы  |  Скачать  |  Купить  |  Поддержка  |  Издателям  |  OEM

Блог компании Два Пилота

обсуждение разных тем

Архив за Февраль, 2008

Как использовать PDF Creator Pilot на ASP.NET страницах без использования Visual Studio.

Февраль 15, 2008

Для этого нам нужно выполнить 3 шага:

  1. получить Interop-обёртку,
  2. скопировать обёртку в определённую папку,
  3. подключить namespace библиотеки к приложению.

Для получения Interop-обёртки PDF Creator Pilot (т.е. такой обёртки, которая позволит вызывать unmanaged код COM-объекта библиотеки из managed кода ASP.NET приложения) нужно воспользоваться стандартной утилитой из .NET SDK – TlbImp.exe (C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\TlbImp.exe)

Пример:

  TlbImp.exe PDFCreatorPilot3.dll /out:Interop.PDFCreatorPilot3Lib.dll

Теперь нужно скопировать полученную обёртку в папку «bin» (если такой папки нет, то нужно создать) в корневой папке нашего веб-приложения.

Пример:

Если веб-приложение расположено в папке «C:\Inetpub\wwwroot\MyApp», то обертку нужно поместить в «C:\Inetpub\wwwroot\MyApp\bin».

Для подключения namespace библиотеки к веб-приложению нужно в *.aspx файл добавить следующую строчку:

<%@ Import Namespace="Interop.PDFCreatorPilot3Lib.dll" %>

Теперь COM объект библиотеки PDF Creator Pilot можно использовать в ASP.NET.

Пример:

<%@ Import Namespace="System" %>
<!-- other import directives are here -->
<%@ Import Namespace="Interop.PDFCreatorPilot3Lib.dll" %>
<HTML> <HEAD>
  <TITLE>Test</TITLE>
  <SCRIPT language="C#" runat="server">
    void ButtonPerform_Click(object sender, System.EventArgs e)
    {
         PDFDocument3Class pdf = new PDFDocument3Class();
         pdf.StartEngine("demo@demo", "demo");
         pdf.AutoCreateURL = true;
         // set other options if needed
         pdf.BeginDoc();
         // do something
         pdf.EndDoc();
    }
  </SCRIPT>
</HEAD>
<BODY>
  <!-- here page content goes -->
  <FORM runat="server">
    <INPUT type="button" id="ButtonPerform" value="Click Me"
      OnServerClick="ButtonPerform_Click" runat="server" />
    <!-- or another vaiant -->
    <asp:Button id="ButtonPerform1" Text="Click Me"
      OnClick="ButtonPerform_Click" runat="server" />
  </FORM>
</BODY>
</HTML>

Филимонов Максим
Разработчик PDF Creator

О юнит-тестах в C++

Февраль 1, 2008

Привет всем!

Сегодня я расскажу о средах для написания юнит-тестов в C++, а также, в частности, о том, как мы используем юнит-тесты в PDF Creator’e.

В определенный момент развития PDF Creator’a стало ясно, что без удобной процедуры тестирования становится все тяжелее и тяжелее. Значительные объемы кода (не везде отрефакторенного), множество клиентов, определенные тонкости формата PDF и работы библиотеки – эти факторы придают особый вес каждому изменению в коде. Сейчас как минимум при выпуске каждой версии (в действительности чаще) мы проверяем набор «визуальных» тестов библиотеки (на выходе получается PDF, нужно глазами оценить правильность результата), затем конвертацию emf-файлов (тоже визуально), ASP- и vbs-скрипты. Множество этих тестов постоянно пополняется, но, к сожалению, правильность получаемых результатов далеко не гарантирует того, что в ходе работы над версией не было ничего нарушено…

Поэтому при работе над PDF Creator 3.9 мы много рефакторили код, одна из задач рефакторинга – подготовить его для тестов. После этого встал вопрос – какую среду использовать. Изначально варианта было два – классический CppUnit (http://sourceforge.net/projects/cppunit/) и Boost Test Library (http://www.boost.org/libs/test/doc/index.html)

Прочитать запись полностью »