Please ignore the second version of the sample.
It's a product of panic (lol)

O/H Theodoros Bebekis έγραψε:
> Hi there
> 
> This is driving me crazy.
> 
> I use Delphi 7.0 Enterpise (Build 4.453)
> and Windows XP Professional Version 2002, Service Pack 2, greek version.
> 
> Please take a look at the following code.
> 
> The variable S, in Paint() method, is assigned a string
> in greek language. I assume that any OEM string
> is capable of reproducing the problem.
> 
> When running the program everything goes OK
> until the Button1 is clicked.
> 
> After that the string on the form is not readable.
> 
> I suspected, at first, that something has changed to my machine,
> something that has to do with how a system dialog box
> which is displayed, affects WideStrings...
> 
> NOTE: this version of the code runs FINE in
>       Delphi 6.0 Enterprise (Build 6.240, Update Pack 2)
> -------------------------------------------------------
> type
>   TForm1 = class(TForm)
>     Button1: TButton;
>     SaveDialog1: TSaveDialog;
>     procedure Button1Click(Sender: TObject);
>   protected
>     procedure PaintText(const Text: WideString);
>     procedure Paint; override;
>   end;
> 
> var
>   Form1: TForm1;
> 
> implementation
> 
> {$R *.dfm}
> 
> procedure TForm1.Paint;
> var
>   S   : string;
> begin
>   inherited Paint;
>   S := '?a'?n~a*o^a* E^u"o'i`a*'; { 'Hello World' in greek language }
>   PaintText(S);
> end;
> 
> procedure TForm1.PaintText(const Text: WideString);
> var
>   R   : TRect;
>   Len : Integer;
> begin
>   R   := Rect(10, 10, 100, 100);
>   Len := Length(Text);
>   Windows.DrawTextExW(Canvas.Handle, PWideChar(Text), Len , R, DT_LEFT, 
> nil);
> end;
> 
> procedure TForm1.Button1Click(Sender: TObject);
> begin
>   SaveDialog1.Execute;
> end;
> -------------------------------------------------------
> ... then I altered the above code as in the following list.
> No button, not dialog box.
> But the result is still the same. That strange behavior.
> The string is not readable.
> 
> NOTE: this second version of the code with
>       Delphi 6.0 Enterprise (Build 6.240, Update Pack 2)
>       has the same behavior as the Delphi 7 before.
> -------------------------------------------------------
> 
> type
>   TForm1 = class(TForm)
>   protected
>     procedure Paint; override;
>   end;
> 
> var
>   Form1: TForm1;
> 
> implementation
> 
> {$R *.dfm}
> 
> procedure TForm1.Paint;
> var
>   S   : string;
>   R   : TRect;
>   Len : Integer;
> begin
>   inherited Paint;
>   S := '?a'?n~a*o^a* E^u"o'i`a*'; { 'Hello World' in greek }
> 
>   R   := Rect(10, 10, 100, 100);
>   Len := Length(Text);
>   Windows.DrawTextExW(Canvas.Handle, PWideChar(Text), Len , R, DT_LEFT, 
> nil);
> end;
> -------------------------------------------------------
> 
> Could please any of you who has an OEM version of Windows
> check those samples in his/her machine and report the results to me?
> 
> Have you any clue of what is happening here?
> 
> I noticed that problem for the first time
> when a coworker of mine sent me a file
> using Skype. I use a greek version of Skype.
> 
> After receiving the file in the Skype and clicking on the Save
> button of the Save file dialog box, in Skype,
> its menus, in the menu bar, turned out to unreadable strings
> just like my Delphi samples with the DrawTextExW() demo.
> I now changed the language of the Skype to english.
> 
> Please help. I'm trying to avoid a format/install here.
> 


-- 
Regards
Theo

------------------------
Theo Bebekis
Thessaloniki, Greece
------------------------
Greek_Delphi_Prog : a Delphi Programming mailing list in Greek at
    http://groups.yahoo.com/group/Greek_Delphi_Prog

CSharpDotNetGreek : A C# and .Net mailing list in Greek language at
    http://groups.yahoo.com/group/CSharpDotNetGreek

atla_custom : a Unisoft Atlantis Customization mailing list at
    http://groups.yahoo.com/group/atla_custom
------------------------

------------------------------------

-----------------------------------------------------
Home page: http://groups.yahoo.com/group/delphi-en/
To unsubscribe: [EMAIL PROTECTED] Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/delphi-en/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/delphi-en/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[EMAIL PROTECTED] 
    mailto:[EMAIL PROTECTED]

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/

Reply via email to