タグ

ブックマーク / codezine.jp (117)

  • iTextSharpを利用して.NETでPDF帳票を出力する:CodeZine

    はじめに アプリケーション開発をしていると帳票を出力したいという要望が多く聞かれます。帳票を出力する方法は幾つかありますが、その中でもよく利用されているのがPDF形式による印刷です。PDFは、Adobe Readerによって表示/印刷できるフォーマットで、きれいに整形された印刷物を提供することができます。稿では、iTextSharpというオープンソースのライブラリを利用して、.NETのアプリケーションからPDFを生成する方法を紹介します。対象読者 Visual Studio(.NET)にて開発を行っていて、PDF生成や帳票出力に興味がある方を対象としています。必要な環境 ダウンロードファイルはVisual Studio 2003にて作成しています。稿では、C#で解説していますが、VisualBasicのソースもサンプルには含まれています。また、Visual C#(Visual Basi

  • Cで実現する「ぷちオブジェクト指向」:CodeZine

    はじめに CodeZineではお初にお目にかかります、επιστημη(エピステーメー)です。最初のアーティクルはクラシックなCのお話。 昨今のアプリケーションはオブジェクト指向言語による実装が主流と言ってもいいでしょう。C++Java、VB.NETさらにはRubyPythonといったスクリプト言語まで、オブジェクト指向でない言語を探すのに苦労するくらいです。 記事では、今なお現役バリバリで活躍している手続き型言語の代表格(?)Cによる、オブジェクト指向のマネゴト(オブジェクト指向風味のCコーディングスタイル)を試みます。対象読者 もっぱらCを主な開発言語として使ってはいるけども、オブジェクト指向に興味と憧れを抱いている方。抽象データ型 手始めにオブジェクト指向の特徴の1つ、「抽象データ型(ADT:Abstract Data Type)」をCで実現してみます。抽象データ型とは、データ

    westlife
    westlife 2007/02/15
  • NAntでVisual Source Safeの操作を自動化する:CodeZine

    はじめに NAntとは、Ant(Javaのビルドツール)の.NET版ツールです。さまざまなタスクやファンクションが用意されていて、開発時の作業自動化や、作業の負荷軽減が可能になる便利なツールです(2006/11/27時点の最新バージョンは0.85)。NAntに関する詳細は、別稿『NAntを活用して開発時の作業を自動化する』も併せて参照してください。NAntContribはNAntの拡張版であり、NAnt用のアドオンタスクが含まれています。 稿ではこのNAntおよび、NAntContribのVSS関連タスクを利用して、Visual Source Safe(VSS)の操作からファイルのチェックアウト、編集、コメント付のチェックインまでを自動で行います。これによって、手動で行っていた修正作業を、短時間で正確に行うことができるようになります。対象読者 Visual Studio.NETの開発者の

  • 相関サブクエリで行と行を比較する:CodeZine

    はじめに SQLでは、同じ行内の列同士を比較することは簡単にできます。普通にWHERE句に「col_1 = col_2」のように書けばよいだけですから。一方、異なる行の間で列同士を比較することは、それほど簡単ではありません。ですがそれは、SQLで行間比較ができないということではありません。手続き型言語とはかなり異なる発想に基づいていますが、SQLでもそうした処理を記述することが可能です。 SQLで行間比較をする際に威力を発揮するのが相関サブクエリ、特に自己結合と組み合わせた「自己相関サブクエリ」です。稿では、この技術を使った行間比較の応用方法を、具体例を通して解説します。稼働環境OracleSQL ServerDB2PostgreSQLMySQL(バージョン4.1以上) 対象読者 相関サブクエリの基的な使い方を知っている方。CASE式、自己結合、スカラ・サブクエリについての知識があると

  • WPF(Windows Presentation Foundation)+XAML入門 後編:CodeZine

    はじめに このシリーズではWPF、WCF、WFについて、Visual Studio 2005 Extensionsを用いたプログラミングを紹介していきます。シリーズ第2回となる稿では、前回構築した環境を使い、WPFを用いたプログラミングについて説明します。 WPFの概要、インストール方法などについては、前回の記事を参照してください。過去の記事WPF(Windows Presentation Foundation)+XAML入門 前編 対象読者 シリーズでは、C#でプログラミングを行ったことがある方を対象としています。特に記事は、Windows Forms、ASP.NET開発経験があるならば、より内容を理解しやすいでしょう。WPFを利用したアプリケーション その1 では早速WPFを使ってプログラミングをしてみましょう。スタンドアロンWindowsアプリケーション 最初はボタンを押すとメ

  • WPF(Windows Presentation Foundation)+XAML入門 前編:CodeZine

    .NET Framework 3.0とは Windows Vistaがいよいよ発売となりましたが、Vistaで追加されたさまざまな機能の土台となっているのが.NET Framework 3.0です。.NET Framework 3.0(旧称 WinFX)は、.NET時代のOSが提供する新たなAPIセットで、以前のWin32 APIのような関数指向のモデルではなく、オブジェクト指向の.NETライブラリとして提供されます。 .NET Framework 3.0の実体は、.NET Framework 2.0をベースとし、それにWPF(Windows Presentation Foundation)、WCF(Windows Communication Foundation)、WF(Windows Workflow Foundation)、WCS(Windows CardSpace)を追加したものと

  • Ajax対応コントロールでJavaScriptレス アニメーションを実装する:CodeZine

    現在、CodePlexではさまざまな技術ツールが格納されており、それぞれダウンロードを行い利用することが可能になっています。代表的な例として、IronPythonやIronPython for ASP.NETが挙げられます。興味がある方は、CodePlexのサイトを参照ください。 このControl Toolkitは現段階でも開発生産性の高い高度な機能を持ったコントロール集ですが、正式版がリリースされた後でもControl Toolkitのコントロールは追加され、バグフィックスなどを盛り込んだリリースが行われます。 稿はControl Toolkitの中の1つであり、Webページにさまざまなエフェクト効果を追加するアニメーションフレームワークであるAnimationExtenderコントロールについて紹介します。AnimationExtenderコントロールが持つアニメーションは次のよ

  • Intel TBBの並列コンテナによる安全でスケーラブルな並列処理:CodeZine

    この連載では、Bjarne Stroustrup氏へのメールインタビューを通して、プログラミング言語設計者の生の声を読者の皆様に直接お伝えしたいと思います。今回は、 Stroustrup氏が考える現在の「C++開発者の動向」について伺いました。言語誕生の瞬間からC++開発者を見守り続けている同氏は、現状をどのように考えているのでしょう? 去る9月9日と11日。東京、大阪の2拠点で10回目となるエンバカデロ・デベロッパーキャンプが開催された。今回のイベントの目玉は、つい先日に発表されたばかりのネイティブWindows開発ツール「Delphi 2009」と「C++Builder 2009」だ。Delphiのプロダクトマネージャを務めるエンバカデロ・テクノロジーズのNick Hodgesが、Delphi/C++Builder 2009の新機能を紹介したセッション内容をレポートする。

    westlife
    westlife 2007/01/29
    スレッドセーフでないコンテナクラスの使用。Intel Threading Building Blocksライブラリの並列コンテナクラスについて
  • CodeZine:Microsoft AJAX Libraryでドラッグ&ドロップ対応のWebページを作成する(Ajax)

    去る8月30日(土曜日)、ライトウェイトプログラミング言語(Lightweight programming Language)の総合カンファレンス「LL Future」が、なかのZERO(中野区もみじ山文化センター)大ホールで開催された。当日は前線の影響で時おり豪雨に見舞われる中、さまざまな言語のユーザーや開発者など千人近くが集まった。

  • データバインドコントロール内で使用できるカスタムラジオボタンの作成:CodeZine

    はじめに GridViewコントロールなどのデータバインドコントロール内では、コントロールのIDなどのプロパティがユニークになるような接頭辞が付加されます。これは、ラジオボタンのグループも対象となってしまうため、複数の要素にまたがってグループ化することができません。 稿では、コントロールを拡張して複数の要素にまたがるグループ化を行うラジオボタンを作成します。対象読者ASP.NETでのアプリケーションの開発者。Web サーバー コントロールの開発経験があるとよい。 必要な環境 Microsoft Visual Studio 2005上で動作確認しています。現象 冒頭に記した現象を確認するため、下記のページを作成します。 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"> <Columns> <

  • SOAP拡張機能でSoapExceptionに例外情報を付加する:CodeZine

    はじめに SOAPとは、XMLで構成されたメッセージを、HTTPなどのプロトコルで送受信するための仕組みです。メッセージは送信する際にXML形式にシリアライズされ、受信する際には逆シリアライズされます。正常時はもちろん例外発生時にも同様にXML形式で情報が返されます。 SOAPの仕様によると例外発生時には、このXML形式に定義されるdetail要素に任意の情報を付加するように定められています。しかし、特別な仕組みを構築せず、Webサービスを作成した状態で例外が発生しても、detail要素には何の情報も設定されません。取得できる情報はmessage要素に含まれるExceptionのメッセージとスタックトレース程度です。 そこで稿では、.NET Frameworkで提供されるSOAP機能拡張を使い、Webサービス内で発生した例外を一元的にハンドリングし、detail要素に例外情報を付加するS

  • ASP.NET 2.0を使ってCSS対応のWebサイトを作成する:CodeZine

    稿では、VB.NETを利用し、簡単な機械語で動く仮想CPUを作ることでバイナリプログラミングを満喫します。実際の業務で直接使えるケースは少ないと思いますが、デバッグやプログラミングの地力向上に役立つでしょう。今回はINC命令とDEC命令の実装を通じて、長さが違う機械語の実装法を解説します。

  • Windows Vistaガジェット入門:CodeZine

    はじめに Windows Vistaでは、デスクトップ上の右側(日語版の既定の設定)に垂直のバーが表示されています。これは、「Windows Sidebar」と呼ばれる新しいツールで、この垂直バーの中で「ガジェット」という小さなプログラムを実行することができます。Windows Vistaには、時計やカレンダーなど、いくつかのガジェットが最初から組み込まれていますが、ユーザーは自由にガジェットを追加したり、解除することができます。Windows Vista標準では「RSSフィードのヘッドライン」「メモ」「時計」「カレンダー」「株価」「連絡帳」「天気予報」などが用意されていますが、さらにガジェットをダウンロードして、簡単に追加していくこともできます。ダウンロード可能なガジェットについては、以下のページを参照してください。Windows Live Gallery  現在は、Windows L

  • S2Dao.NETでXMLレスなO/Rマッピングを行う:CodeZine

    はじめに データアクセスを簡単にするO/Rマッピングライブラリやテーブルアダプタを採用しているにも関わらず、「設定ファイルを書くことが大変だ」「自動生成されたソースが複雑だ」などと感じたことはことはありませんか? 稿では、コードがシンプルで、マッピングを定義するXMLファイルも書かなくてよい「S2Dao.NET」という新しいO/Rマッピングライブラリについて紹介します。対象読者 .NET開発者。データベースプログラミングやO/Rマッピングに興味をある方を対象としています。必要な環境 このサンプルはVisual Studio 2005で作成し、.NET Framework 2.0で動作確認をしています。データベースはMicrosoft Access(MDB)を使用しています。稿ではC#にて解説をしていますが、VisualBasicのソースコードもダウンロードできます。 S2Dao.NET

  • 触ってみようASP.NET 2.0 AJAX Extensions:CodeZine

    はじめに ASP.NET AJAXはASP.NET 2.0上で動作するAJAXの技術セットで、アドインとして利用することができます。ASP.NET AJAXのフレームワークはJavaScriptで書かれていて、クライアントサイド(JavaScript+DHTML)中心の開発手法とサーバーサイド(ASP.NET 2.0)中心の開発手法があり、使用しやすい方を中心に利用することができます。 クライアントサイドの特徴として、JavaScriptを記述する際のオブジェクト指向のサポート、独自の名前空間やJSONシリアライザのサポートにより、開発を容易に行えるようになっています。しかしクライアントサイド中心の開発では、基的なAJAXの動作原理とJavaScript+DHTMLに精通していることが必要になります。 一方、サーバーサイド中心の開発では、サーバーサイドのコントロールとして、AJAXの機能

  • .NETによるプラグイン機能を持つテキストエディタの作成:CodeZine

    はじめに Adobe PhotoshopやBecky! Internet Mailなどのアプリケーションでは「プラグイン」(または、「アドイン」、「エクステンション」等)と呼ばれるプログラムをインストールすることにより、機能を拡張することができます。この記事ではこのようなプラグイン機能を持ったアプリケーションの作り方を、プラグイン対応のテキストエディタを作成することにより、説明します。 ここで紹介するプラグイン機能は、Becky!のように、プラグイン体であるDLLファイルを指定されたフォルダにコピーすることにより、プラグインを使用するアプリケーション(ホスト)が自動的にプラグインを認識するというものです。 なお、プラグイン機能の解説が目的のため、テキストエディタはフォームにRichTextBoxを貼り付けただけの貧弱なものですので、テキストエディタ作成の参考にはなりません。 対象読

  • 動的PInvokeによる統合アーカイバ仕様DLLを使用した書庫の展開と作成:CodeZine

    また、記事内で「Unbel32.dll」(バージョン:0.45、著作権者:島田啓史)に触れた部分もありますが、これは対象外とさせていただきます。私が試した限りでは、正常な動作が確認できなかったためです。前提知識 この記事はプログラミング初心者を対象としていないため、基的な事柄については説明しません。不明な点はMSDNなどで調べてください。 またこの記事では、統合アーカイバDLLの使い方についてもある程度の説明はしていますが、各DLLを使用する前には必ずDLLと同梱されているドキュメントをお読みいただき、ライセンスや使い方などを確認してください。必要な環境 サンプルはMicrosoft Visual Studio 2005で作成されています。実行には、.NET Framework 2.0が必要です。また、すべてのサンプルを実行するためには、「Unlha32.dll」がインストールされている

  • iTextSharpを利用して.NETでPDF帳票を出力する:CodeZine

    はじめに アプリケーション開発をしていると帳票を出力したいという要望が多く聞かれます。帳票を出力する方法は幾つかありますが、その中でもよく利用されているのがPDF形式による印刷です。PDFは、Adobe Readerによって表示/印刷できるフォーマットで、きれいに整形された印刷物を提供することができます。稿では、iTextSharpというオープンソースのライブラリを利用して、.NETのアプリケーションからPDFを生成する方法を紹介します。対象読者 Visual Studio(.NET)にて開発を行っていて、PDF生成や帳票出力に興味がある方を対象としています。必要な環境 ダウンロードファイルはVisual Studio 2003にて作成しています。稿では、C#で解説していますが、VisualBasicのソースもサンプルには含まれています。また、Visual C#(Visual Basi

  • log4netでデバッグや障害解析に役立つログを出力する:CodeZine

    はじめに 稿では、開発から運用まで一貫して利用できるロギングライブラリの「log4net」を紹介します。 読者の皆さんは、アプリケーションの挙動を確かめるために、メッセージボックスを表示(MessageBox.Show)させたり、デバッグウィンドウにメッセージを出力(Console.WriteLine)していませんでしょうか。これらの方法は手軽な反面、リリース前にMessageBox.Showをコメントアウトしなければいけない、Console.WriteLineの出力メッセージを実行形式のモジュールから見ることができないなど、番運用には適しているとはいえません。しかし、log4netを使用すると簡単に効果的なログ出力が可能になります。対象読者 .NETにて開発を行っている方を対象としています。必要な環境 サンプルはVisual Studio .NET 2003で作成され、.NET Fr

  • NHibernateを利用してSQLを書かずにデータベースにアクセスする方法:CodeZine

    はじめに データベースにアクセスするアプリケーションの開発で、個々のテーブルに対してSQLを書く作業が繰り返しで冗長だと感じたことはありませんでしょうか。稿では、このような問題の解決に有効な「NHibernate」というオープンソースのプロダクトについて紹介します。NHibernateは、SQLを書かなくともテーブルのデータとクラスをシームレスに変換させるO/Rマッピング(Object/Relational Mapping)を実現できるため、コーディングの量を軽減することが可能になります。 対象読者 .NETにて開発を行っている方を対象としています。 必要な環境 サンプルはVisual Studio .NET 2003で作成され、.NET Framework 1.1、NHibernate 0.91で動作確認をしています。 NHibernateの概要と入手方法 NHibern