jocky a bien raison, ce sont les bonnes fonctions...
voici une fonction complete
PRINTDLG pd;
DOCINFO di;
char*szMessage;
memset(&pd, 0, sizeof(PRINTDLG));
memset(&di, 0, sizeof(DOCINFO));
di.cbSize=sizeof(DOCINFO);
di.lpszDocName="Test";
pd.lStructSize=sizeof(PRINTDLG);
pd.Flags=PD_PAGENUMS|PD_RETURNDC;
pd.nFromPage=1;
pd.nToPage=1;
pd.nMinPage=1;
pd.nMaxPage=1;
szMessage=0;
if(PrintDlg (&pd))
{
if(pd.hDC)
{
if(StartDoc (pd.hDC, &di) != SP_ERROR)
{
{
char ligneAPrn[100];
// int i =0;
int Index1=0;
int Index2=2;
//if (iTailleTxt > 0)
{
unsigned int i,l;
l=txt.getLength();
for( i=0;i < l;i++)
{
ligneAPrn[Index1]=txt[i];
if(txt[i] =='\n')
{
Index2++;
ligneAPrn[Index1]='\0';
TextOut(pd.hDC,100, Index2*100, ligneAPrn, strlen(ligneAPrn));
Index1=0;
}
else
Index1++;
if(Index2 == 60)
{
EndPage(pd.hDC);
EndDoc(pd.hDC);
StartDoc(pd.hDC, &di);
Index2=2;
}
}
Index2++;
ligneAPrn[Index1]='\0';
TextOut(pd.hDC,100, Index2*100, ligneAPrn, strlen(ligneAPrn));
EndPage(pd.hDC);
EndDoc(pd.hDC);
szMessage="IMPRESSION OK";
}
}
}
else
szMessage="ERREUR Type 1";
}
else
szMessage="ERREUR Type 2.";
}
else
szMessage="Impression annulé par l'utilisateur";
if(!szMessage)
return true;
...
___________________________________________________________
MagicalementNono 