How do I remove special characters / hyroglyphs from print output (MFC Dialog print)?

Posted on 2010-08-26
Last Modified: 2013-11-20
I'm new to MFC programming and have been working on a Database application.  I'm more experienced in COBOL and VBA so alot of this is new to me.
I have attached an example of my print layout and the coding to produce it, any help / guidance would be greatly appreciated.
void CDB3tutorialView::OnDraw(CDC* pDC)


	// TODO: Add your specialized code here and/or call the base class

	CDB3tutorialDoc* pDoc = GetDocument();


	CString strTmp;

	CDatabase database;

	CString SqlString;

	int ysize = 400;

	CString	sFirstName = _T("");

	CString	sLastName = _T("");

	CString	sAge = _T("");

	CString	sProject = _T("");

	CString	sCompleted = _T("");

	CString sDriver = _T("MICROSOFT ACCESS DRIVER (*.mdb)");

	CString sDsn;

	CString sFile = _T("c:\\Users\\A Telfer\\Desktop\\TestDB.mdb");

	CRect rect (100, 100, 10000, 10000);


		pDC->TextOutW( 200, 200, _T("First"));

		pDC->TextOutW( 200, 300, _T("-------"));

		pDC->TextOutW( 800, 200, _T("Last"));

		pDC->TextOutW( 800, 300, _T("-------"));

		pDC->TextOutW( 1300, 200, _T("Age"));

		pDC->TextOutW( 1300, 300, _T("---"));

		pDC->TextOutW( 1700, 200, _T("Project"));

		pDC->TextOutW( 1700, 300, _T("-------"));

		pDC->TextOutW( 2200, 200, _T("Completed?"));

		pDC->TextOutW( 2200, 300, _T("----------"));


		sDsn.Format( _T("ODBC;DRIVER={%s};DSN='';DBQ=%s"),sDriver,sFile);	


		// Allocate the recordset

		CRecordset recset( &database );

		// Build the SQL statement

		SqlString =  _T("SELECT FirstName, LastName, Age, Project, Completed ")

				_T("FROM Project");

		// Execute the query


		// Loop through each record

		while( !recset.IsEOF() )


			// Copy each column into a variable






			pDC->TextOutW( 200, ysize, sFirstName);

			pDC->TextOutW( 800, ysize, sLastName);

			pDC->TextOutW( 1300, ysize, sAge);

			pDC->TextOutW(1800, ysize, sProject);

			pDC->TextOutW(2350, ysize, sCompleted);

			// goto next record


			sFirstName = _T("");

			sLastName = _T("");

			sAge = _T("");

			sProject = _T("");

			sCompleted = _T("");

			ysize = ysize+100;



Open in new window

Question by:atonline
1 Comment

Accepted Solution

atonline earned 0 total points
ID: 33529790
I have actually found out a solution to my problem.
It appears changing the Project "Character Set" to 'Multi-Byte' instead of 'Unicode' and a bit of code tweeking has resolved my problem.  (Example attached)

Any comments on alternatives will be appreciated.

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Introduction: Ownerdraw of the grid button.  A singleton class implentation and usage. Continuing from the fifth article about sudoku.   Open the project in visual studio. Go to the class view – CGridButton should be visible as a class.  R…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now