ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 [dcc64 Warning] iewords.pas(17279): W1064 Widening given AnsiString constant los
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

BobSmith

11 Posts

Posted - Nov 13 2025 :  02:24:38  Show Profile  Reply
Hi,

I try and get rid of any warnings during my compiles. I even make sure I have no warnings during builds. I was able to get rid of most of the ImageEn warnings with {$WARNINGS OFF} and {$WARNINGS ON} around the code that causes the warnings, but 7 warnings remain for

[dcc64 Warning] iewords.pas(17279): W1064 Widening given AnsiString constant lost information

I have surrounded the offending line like

{$WARN CVT_WIDENING_STRING_LOST OFF}
{$WARNINGS OFF}
{$WARN OFF}
IESetCurrentLangWordU( IEMsg_Rotate180, #26059#36681#49#56#48#176 );
{$WARN CVT_WIDENING_STRING_LOST ON}
{$WARNINGS ON}
{$WARN ON}

and yet the Delphi compiler still throws up the warning.

Any ideas on how to suppress or get rid of the warning?

xequte

39255 Posts

Posted - Nov 13 2025 :  19:54:35  Show Profile  Reply
Hi Bob

I'm not seeing that. What version of Delphi and ImageEn are you using?

Can you confirm what language defines you have changed in ie.inc?

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

BobSmith

11 Posts

Posted - Nov 14 2025 :  01:51:19  Show Profile  Reply
OK, I am on Delphi 12 Version 29.0.55362.2017

I installed ImageEn, then moved the source directory under my project. I then uninstalled ImageEn.
I added the source directory to my project search path.
I then add ImageEnView to my uses and then can create an ImageEnView1 at runtime.

That all works OK. I did not change anything in the ImageEn source except surrounding warnings with {$WARNINGS OFF} and {$WARNINGS ON}
Is there something I can edit in ie.inc to avoid the warnings?

Thanks.
Go to Top of Page

xequte

39255 Posts

Posted - Nov 14 2025 :  17:18:32  Show Profile  Reply
Hi

Is this an old version of ImageEn, because the line you mention:

IESetCurrentLangWordU( IEMsg_Rotate180, #26059#36681#49#56#48#176 );

Should not be compiled at all. It is inside the define {$IFDEF IESupportChineseTraditional}{$endif} which is not defined in ie.inc since we started using the Language DLL.

Does that code show as grayed out in the Delphi IDE?

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

BobSmith

11 Posts

Posted - Nov 14 2025 :  20:54:30  Show Profile  Reply
Latest version. At least from 2 days ago.
It shows as follows.

https://imgur.com/a/FNIO0aL

Because I just copied the source directory, do I need to add some defines?
Go to Top of Page

xequte

39255 Posts

Posted - Nov 16 2025 :  02:22:26  Show Profile  Reply
Hi Bob

So you made no changes to the ie.inc file? That is very unexpected as that code is undefined (so not compiled).

Would you prefer just to remove the non-English language strings (as they are not used in the default configuation)?

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

BobSmith

11 Posts

Posted - Nov 16 2025 :  03:23:03  Show Profile  Reply
No changes at all.
Just to be sure, here are some steps to reproduce the warnings.

1. Install ImageEnView (does not matter where)
2. Copy the source directory out of the ImageEnVew install directory
3. Uninstall ImageEnView
4. Create a new empty project in Delphi
5. Move the source directory under the new Delphi project directory
6. Add the source directory to the Project source path
7. Add ImageEnView to the main form uses. That is the only change to the project code.
8. Compile or Build.

You will see the warnings...
https://imgur.com/a/ACIt5aR

I do not need any non English language strings. At this stage I only need the base level ImageEnView as a TImage replacement. None of the other features are required. This is all just trying to get around the 23000x23000 size limit in TImage (and Windows).
Go to Top of Page

xequte

39255 Posts

Posted - Nov 16 2025 :  22:23:15  Show Profile  Reply
Hmmm, this is perplexing.

If you open iewords.pas in the Delphi IDE, do the lines show as grayed out as below (i.e. undefine is working)?

Does the format in the status bar show as "ANSI"?



What is the language of the system?

Can you email me for some updated source code to test.

Nigel
Xequte Software
www.imageen.com


P.S. You don't need to install/uninstall just to get the source code. It is available as a zip. Email us for future releases.
Go to Top of Page

BobSmith

11 Posts

Posted - Nov 17 2025 :  00:18:05  Show Profile  Reply
Those lines do not show as disabled (other lines in IEIncludeActions_Msgs sections before that are disabled, but not those ones).

https://imgur.com/a/lWZ4qJQ

English. ANSI.

I will email for updated code. I emailed using the online form, it says it went to sales. So you may see it there.

Thanks.
Go to Top of Page

xequte

39255 Posts

Posted - Nov 17 2025 :  00:57:02  Show Profile  Reply
Hmm, try opening ie.inc and removing all the language defines, except IESupportEnglish.

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

BobSmith

11 Posts

Posted - Nov 17 2025 :  01:59:09  Show Profile  Reply
You mean so all that is left of the languages in ie.inc looks like this?

https://imgur.com/a/yrcNyoG

If so, makes no difference to the compile warnings once removed and a full build is run.
Go to Top of Page

xequte

39255 Posts

Posted - Nov 17 2025 :  03:30:04  Show Profile  Reply
Hmmm, I've never seen this happen before and am quite at a loss.

Add this to the top of the iewords.pas unit:

{$undef IESupportEnglish} // English
{$undef IESupportItalian} // Italian
{$undef IESupportGerman} // German
{$undef IESupportSpanish} // Spanish
{$undef IESupportFrench} // French
{$undef IESupportPortuguese} // Portuguese
{$undef IESupportGreek} // Greek
{$undef IESupportRussian} // Russian
{$undef IESupportDutch} // Dutch
{$undef IESupportSwedish} // Swedish
{$undef IESupportPolish} // Polish
{$undef IESupportJapanese} // Japanese
{$undef IESupportCzech} // Czech
{$undef IESupportFinnish} // Finnish
{$undef IESupportFarsi} // Farsi
{$undef IESupportChinese} // Chinese Simplified
{$undef IESupportChineseTraditional} // Chinese Traditional
{$undef IESupportDanish} // Danish
{$undef IESupportTurkish} // Turkish
{$undef IESupportKorean} // Korean
{$undef IESupportHungarian} // Hungarian
{$undef IESupportArabic} // Arabic
{$undef IESupportSerbian} // Serbian
{$undef IESupportNorwegian} // Norwegian
{$undef IESupportSlovenian} // Slovenian

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

xequte

39255 Posts

Posted - Nov 17 2025 :  04:17:13  Show Profile  Reply
After the {$I ie.inc} line.

Also, please search your system for any other instances of ie.inc

Nigel
Xequte Software
www.imageen.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: