[リストへもどる]
一括表示
タイトルcmnGetCurrentTime関数の使い方について
記事No273
投稿日: 2007/10/19(Fri) 21:38
投稿者営々
こんにちは。
以下のようなルーチンを作ってみたのですが、うまく現在時刻を取得できません。
なにか使い方が間違っているのでしょうか? お知恵をお借りできたら助かります。

OSはWindows XP SP2です。

======================================
#include <iomanip>
#include <strstream>

WORD tmNow; // 作業用日時カウンタ
WORD wYear; // 年(西暦4桁)
WORD wMonth; // 月
WORD wDay; // 日
WORD wHour; // 時
WORD wMinute;// 分
WORD wSecond;// 秒

tmNow = m_pICmnPilot->cmnGetCurrentTime(); // 現在日時を取得

m_pICmnPilot->cmnGetTmFromTime (tmNow , wYear, wMonth, wDay, wHour, wMinute, wSecond); // 今日に日時カウンタを日付の数値に分解

std::ostrstream osStrTemp; // 日付文字列作成用ストリーム出力
osStrTemp << tmNow
<< ('=')
<< setw(4) << wYear // 4桁で年を出力
<< ('/')
<< setw(2) << wMonth // 2桁で月を出力
<< ('/')
<< setw(2) << wDay // 2桁で日を出力
<< (' ')
<< setw(2) << wHour // 2桁で時間を出力
<< (':')
<< setw(2) << wMinute // 2桁で分を出力
<< (':')
<< setw(2) << wSecond // 2桁で秒を出力
<< std::ends // 文字列末尾のヌル文字を出力
<< std::flush; // 出力バッファをフラッシュ

MessageBox(NULL , osStrTemp.str() , "CMNデバッグ - 現在日時の取得" , MB_SYSTEMMODAL); // メッセージボックスを最前面に表示

======================================

実行結果: "41929=1970/ 1/ 1 20:38:49"

タイトルRe: cmnGetCurrentTime関数の使い方について
記事No274
投稿日: 2007/10/19(Fri) 22:47
投稿者うぇいく   <weyk@nifty.com>
> WORD tmNow; // 作業用日時カウンタ
これ、桁が足りなさ過ぎるような気が。おそらく、tmNowって通算秒ですよね?

タイトルRe2: cmnGetCurrentTime関数の使い方について
記事No275
投稿日: 2007/10/19(Fri) 23:04
投稿者営々
うぇいくさん、レスありがとうございます。

>これ、桁が足りなさ過ぎるような気が。

わ、WORDとDWORDを間違えてました(^^;ゞ
これで何とかなりそうです。ありがとうございました。