忍者ブログ
NINJA
[3] [4] [5] [6] [7] [8] [9]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

文字列を10進数へ変換する。


int xxxxxx::StringToDex(CString str)
{
    int dex = 0;

    CStringW strw = str;
    _stscanf( strw, _T("%d"), &dex );

    return dex;
}

PR
char型をマルチバイト文字列に変換する。


HRESULT Cxxxx::DXconvAnsiToWide( WCHAR* wstrDest, const CHAR* strSrc, int ct )
{
    // 引数の*がNULLの場合と、文字数が1以下の場合はエラー
    if( wstrDest==NULL || strSrc==NULL || ct < 1 )
        return E_INVALIDARG;

    int nResult = MultiByteToWideChar( CP_ACP, 0, strSrc, -1, wstrDest, ct );
    wstrDest[ct-1] = 0;
   
    if( nResult == 0 )
        return E_FAIL;
    return S_OK;

}

Unicode文字列をマルチバイト文字列に変換する。

char*    Cxxxx::ConvertFromUnicode(CString pszWchar)
{
    int        nLen;
    char*    pszChar;

    //charに必要な文字数の取得
    nLen = ::WideCharToMultiByte(CP_THREAD_ACP,0,pszWchar,-1,NULL,0,NULL,NULL);
    pszChar = new char[nLen];
    if(pszChar == NULL)
        return    NULL;

    //変換
    nLen = ::WideCharToMultiByte(CP_THREAD_ACP,0,pszWchar,wcslen(pszWchar)+1,pszChar,nLen,NULL,NULL);
    if(nLen)
        return    pszChar;

    delete    pszChar;

    return    NULL;
}

MFCのDLLの作成の仕方。

1. 通常の関数を作成するようにし、戻り値と関数名の間に以下のコードを入れる。

ヘッダーファイル:
int  WINAPI xxxxx);

実装ファイル;
int  WINAPI xxxxx(){     }

ドキュメントクラスへのアクセス方法としていくつかあります。

1. Documentクラスの外部変数
ドキュメントクラスの外側に以下のコードを記載。

  CxxxDoc*    ex_pDoc;

ドキュメントクラスのコントラクタに、以下のコードを記載。

      ex_pDoc = this;

2. クラス宣言
  CxxxDoc*    pDoc = (CxxxDoc*)((CFrameWnd *)AfxGetMainWnd() )->GetActiveDocument();
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
フリーエリア
最新CM
最新TB
プロフィール
HN:
No Name Ninja
性別:
非公開
バーコード
ブログ内検索
アーカイブ
P R
Powered by ニンジャブログ  Designed by ゆきぱんだ
Copyright (c) Visual Studio C++のお勉強 All Rights Reserved
忍者ブログ / [PR]