掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
UNICODE文字をプリンタ出力するには? (ID:51899)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
初めて書き込みさせて頂きます、坂本と申します。 VC++、win32APIについて全くの素人なのですが、仕事でVBからUNICODEを プリンタ出力する必要性に迫られおり、色々調べて上記コードまで作成したのですが、うまく印刷されません(?に化けてしまう) 以下のようなコードを書いて、DLLとしてVBから呼び出しをしています。 // 唯一の CTestdll2App オブジェクト CTestdll2App theApp; void CTestdll2App::PrintUnicodeData() { FILE *fp; // ファイルポインタ wchar_t sFile[MAX_PATH]; // ファイルパス wchar_t sBuff[256 * 2]; wchar_t sBuffUni[256]; HDC dcPrint; // プリンタデバイスコンテキスト DOCINFO docInfo ; // 印刷情報 // 初期化 memset(sBuff, 0x00, sizeof(sBuff)); memset(sBuffUni, 0x00, sizeof(sBuffUni)); /** ファイル読み込み **/ wcscpy(sFile, L"unicode.txt" ); // 読込みファイルパス作成 fp = _wfopen(sFile, L"rb"); // バイナリ読込みモードでファイルオープン if(NULL == fp){ AfxMessageBox(L"ファイルオープンエラー"); return; } fgetws(sBuffUni, sizeof(sBuffUni), fp); // 1行読込み //fgets(sBuff, sizeof(sBuff), fp); fclose( fp ); // ファイルクローズ /** 印刷 **/ dcPrint = CreateDC( L"WINSPOOL", L"\\\\nl2sv2\\HP1-LBP1810-1", NULL, 0); // 初期化 memset( &docInfo, NULL, sizeof( DOCINFO )); StartDoc( dcPrint, &docInfo); // 印字開始 StartPage( dcPrint ); // TextOutWを使用してUnicode.txtから読み込んだ文字列を出力してみる。 TextOutW(dcPrint, 0, 1, sBuffUni, sizeof(sBuffUni)); EndDoc( dcPrint ); // 印字終了 DeleteDC( dcPrint ); // デバイスコンテキストの破棄 AfxMessageBox(L"印刷しましたよ"); return; } どなたか、ご教授願えないでしょうか? 宜しくお願い致します。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.