全ては時の中に…

システム開発全般の技術や開発に役立つツール、プログラミングのサンプルを紹介しています。

【C++】C++からLuaスクリプトを実行する

以前の記事「【Lua】実行環境の構築」でLuaの実行環境を構築しました。
今回は、C++からLuaのコードを実行する方法について説明します。
構築した環境の中にC++からLuaのコードを実行するために必要な開発環境も含まれていますので、それを利用します。

Luaのコードを実行するには、以下の準備が必要です。
 1.Lua用のヘッダファイルをincludeする。
  →"lua.hpp"をincludeする。
  ※Lua用のヘッダファイル(*.h)を直接includeする場合は、
   exturn "C"{}内にinclude文を記述する必要があります。

 2.Luaの初期化を行う。
  →lua_open()関数かlua_newstate()関数で行う。
 3.Luaのコードを実行する。
  →luaL_dostring()関数を利用する。
 4.Luaを終了する。
  →lua_close()関数を利用する。

以下、サンプル。
続きを読む

【Lua】実行環境の構築

Luaというスクリプト言語があります。
このLuaは、組み込み系やゲーム開発等で頻繁に利用されるようになってきているとの事です。
C言語やC++との連携が容易にできるらしいので、実行環境を構築してみました。

以下、WindowsでLuaの実行環境を準備する手順のメモです。
(C言語やC++との連携は、別の記事で紹介します)
続きを読む

【Linux】改行コードの変換(Windows→Linux)

WindowsとLinuxでは、改行コードが異なります。
改行コードは、それぞれ以下の通りです。
 Windows … CRLF(キャリッジリターン+ラインフィード)
 Linux … LF(ラインフィード)

上記の違いにより、Windowsで作成したテキストファイルをLinuxにコピーして利用する場合、改行コードを変更しなければならない事があります。
(プログラム等で処理する場合、改行コードの違いによって正しく処理できないことがあるためです)
このような場合にLinuxのコマンドで改行コードを変換する方法について説明します。

Linuxには、trコマンドという文字列操作用コマンドがあります。
このコマンドでは、文字列の置き換えや削除ができるため、これを利用して改行コードをLinuxのコードに置き換えます。
(正確には、改行コードのCRを削除すれば、Linux用の改行コードになります)

以下、改行コードからCRを削除するコマンドです。
# tr -d '\r' <入力ファイルパス> 出力ファイルパス

オプションについての説明です。
 ・-dは、指定した文字の削除を意味します。
 ・"\r"は、復帰コード(キャリッジリターン)を表します。
 ・入力ファイルパスには、改行コードのCRを削除したいテキストファイルのパスを指定します。
 ・出力ファイルパスには、変換後の結果を保存するファイルパスを指定します。
  入力ファイルパスと同じファイルに上書きする場合には、入力ファイルパスと同じものを指定します。

尚、改行コードを確認するには、odコマンドを利用します。
# od -c テキストファイルパス

ここで確認したテキストファイルに「\r \n」というコードがあった場合、改行コードがCRLFとなります。
単に「\n」となっている場合は、改行コードがLFとなっているため、Linux用の改行コードとなっています。

以下、改行コードを変換する手順です。
続きを読む

【ネットワーク】Wiresharkで自端末へのパケットをキャプチャする方法

ネットワークを流れるパケットをキャプチャするためのソフトウェアにWiresharkというソフトがあります。
このWiresharkでは、送信元と宛先が同じ端末のパケット(自ホストに対して送信したパケット)をキャプチャすることができません。

これを取得できるようにする方法について説明します。

以下は、Windows XP SP2での操作内容です。
(Vista等では異なる可能性があります)

まず、最初に自ホストに対して送信したパケットがWiresharkでキャプチャ出来ないことを確認します。
自ホストに対してパケットを送る単純な方法は、localhostやループバックアドレス(127.0.0.1)に対してpingを送る方法です。

以下、操作手順です。
続きを読む

【ネットワーク】パケットキャプチャソフト(Wireshark)

ネットワークプログラムを作成していると、ネットワーク上に流れているパケットを確認したいことがあります。
このような場合には、パケットキャプチャソフトを利用して確認することができます。

パケットキャプチャソフトには、いくつかの種類がありますが、Wiresharkというソフトについて紹介します。
(Etherealの後継となるソフトウェアです)

Wiresharkは、Wireshark.orgからダウンロードできます。

以下、インストール手順。
続きを読む

【Excel VBA】指定した文字コードでファイルに出力する

Excel VBAで文字コードを指定する方法について説明します。
文字コードを指定してファイルを保存したい場合に利用して下さい。

文字コードを指定する場合、通常のファイル操作ではなく、ADODB.Streamを利用します。
ADODB.Streamは、Charsetというプロパティがあります。
このプロパティに文字コードを設定することで、指定した文字コードのファイルを作成することができます。

以下、サンプル。
続きを読む

【Excel VBA】Printステートメントに改行コードを含めない方法

以前の記事「【Excel VBA】テキストファイルにデータを保存する」に関連した内容です。

通常、Printステートメントを使ってデータを出力した場合、改行コードが含まれます。
この改行コードを含めないようにする方法について説明します。

Printステートメントで改行コードを含めないようにするには、Printステートメントの最後に「;(セミコロン)」を入力するだけです。
こうすることで、改行コードを含めずにデータを出力します。

この方法は、Linux等のようにWindowsとは異なる改行コードを扱うファイルシステムとファイル交換する場合に有効です。
WindowsとLinuxの改行コードは、以下の通りです。
 ・Windows … CRLF(0x0D0A)
 ・Linux  … LF (0x0A)

以下、サンプル。
続きを読む

【Excel VBA】テキストファイルにデータを保存する

Excel VBAを使ってテキストファイルにデータを保存する方法について説明します。
ファイルにデータを保存する場合の手順は、
 1.ファイルを開く
 2.データを書き込む
 3.ファイルを閉じる
となります。

VBAの場合、ファイル番号を利用してファイルを操作します。
ファイル番号は、ファイルを開く際に指定した番号となります。

以下、サンプル。
続きを読む

【Excel VBA】ファイル一覧を取得する

Excel VBAでファイル一覧を取得する方法について説明します。
ファイル一覧を取得するには、FileSystemObjectを利用します。
FileSystemObjectは、以下のような場合に利用します。
 ・指定したファイルのファイル情報を取得する
 ・指定したフォルダのフォルダ情報を取得する
 ・指定したフォルダにあるファイル情報を取得する 等
※ここで紹介したものは一例であり、他の使い方もできます。

FileSystemObjectを利用するには、以下のような方法があります。
 1.「Microsoft Scripting Runtime」を参照する
 2.CreateObject()関数を利用する

以下、サンプル。
続きを読む

【VC++】スレッド(pThread)を利用する

以前の記事「【VC++】スレッド(pThread)を利用する準備を整える」の続きです。
前回でpThreadを利用する環境が整ったので、実際にpThreadを利用したプログラムを作成してみます。

以下、サンプルです。
続きを読む

【VC++】スレッド(pThread)を利用する環境を整える

VC++でスレッド用のライブラリ(pThread)を利用する方法について説明します。
今回は、ライブラリを入手して利用できる環境を整える部分に焦点を当てます。
(次回以降で、スレッドの使い方を説明します)

VC++でpThreadを利用する場合、以下のサイトからライブラリをダウンロードする必要があります。

Open Source POSIX Threads for Win32

以下、設定手順です。
続きを読む

【コマンド】バッチプログラムの処理を一時停止する

バッチファイル(.bat)を利用してコマンドを処理させている場合、ある特定の処理まで完了した時点で、一時中断させたい場合があります。
このような場合には、pauseコマンドを利用します。

このpauseコマンドを利用すると、以下のメッセージが表示されます。
「"続行するには何かキーを押してください..."」

以下、サンプル。
続きを読む

【ソフトウェア紹介】OpenProject(プロジェクト管理ツール)

無料のプロジェクト管理ソフトでOpenProjectが公開されています。
このソフトでは、MS-Projectのファイルも開くことができます。

openproj.orgからダウンロードできます。

以下、インストール手順。
続きを読む

【Linux】環境変数を設定する

ソフトウェアによっては、環境変数を必要とするものがあります。
Fedora 10で環境変数を利用する方法について説明します。
Linuxでは、環境変数はexportコマンドを利用して設定します。

《構文》
  export 変数名=値


TEST_PATHという環境変数に「/usr/test」を登録する場合は、以下のように登録します。
export TEST_PATH=/usr/test

このexportコマンドで登録した環境変数は、シェルを終了すると同時に破棄されてしまいます。
(コンソールで定義した場合、コンソール終了時に破棄されます)

毎回、環境変数を定義するのは面倒なので、自動的に読み込ませたいと思います。
RedHat系の場合、「/etc/profiled.d/」にshファイルを作成し、そのファイルに環境変数を定義しておくことで、ログイン時に自動的に読み込みます。
ログイン時、このフォルダにある全ての「.sh」と「.csh」ファイルが自動的に読み込まれます。
そのため、ファイル名に制約はありません。
これにより、ソフトウェア毎に固有の定義ができるため、管理がしやすくなるというメリットがあります。

以下、登録手順です。
続きを読む

【Excel VBA】ファイルの保存ダイアログを表示する

以前の記事「【Excel VBA】ファイルダイアログを利用する」に関連した内容です。

今回は、ファイルの保存ダイアログを表示する方法について説明します。
ファイルを開くダイアログの表示方法と同じく、Office.FileDialogオブジェクトを利用します。
ファイルの保存ダイアログを表示する場合、msoFileDialogSaveAsを指定します。

ファイルの保存ダイアログは、保存場所を指定する場合に利用します。
実際の保存処理は別に実装する必要があるという点に注意して下さい。

以下、サンプル。
続きを読む
Recent Comments
Recent TrackBacks
Profile

ふりっつ

システムエンジニア
取得資格:
 ソフトウェア開発技術者
 MCP(70-290)
メールマガジン:
 【出張版】全ては時の中に…

メールマガジン
メルマガ登録・解除
【出張版】全ては時の中に…
 
 powered by メルマガスタンドmelma! トップページへ
ブログランキング
アクセス解析出会い




にほんブログ村 IT技術ブログへ

にほんブログ村 IT技術ブログ プログラム・プログラマへ

Amazon
スポンサー
HonyaClub.com

PCDEPOT WEB本店/OZZIO

FUJIFILMMALL(フジフイルムモール)

IT 関連資格ならクラムメディア問題集

  • ライブドアブログ