¿CharInSet no funciona con letras que no están en inglés?

He actualizado una aplicación de Delphi 2007 a Delphi 2010, todo salió bien, excepto una declaración que se compiló bien pero no funciona, que es:

If Edit1.Text[1] in ['S','س'] then 
  ShowMessage('Found')
else
  ShowMessage('Not Found')

Sin embargo, sabía que no lo haría, así que cambié aCharInSet

If CharinSet(Edit1.Text[1],['S','س']) then
  ShowMessage('Found')
else
  ShowMessage('Not Found')

pero nunca funcionó cuando la cadena esس, pero siempre trabajamos conS, incluso lancé el edt1.Text1 con AnsiChar no siempre funciona las letras árabes.

Estoy haciendo algo mal, o no es la formaCharInSet funciona ?, o eso es un error enCharinSet?

ACTUALIZAR:

Mi gran amigoIssam Ali ha sugerido otra solución que funcionó bien ya que:

  If CharinSet(AnsiString(edt1.Text)[1],['S','س']) then

Respuestas a la pregunta(5)

Su respuesta a la pregunta