すみません。教えてください。
自分の作ったプログラムが不安定でバグさがしています。
1)の記述を2)にすると、コンパイルは通るのに実行時必ずエラーで止ってしまいます。
これって意味は同じだと思うのですが、何か変でしょうか?

1)pBuffS := AnsiStrPos(pBuff,'<');

2)pBuffS := AnsiStrPos(pBuff,PChar('<'));

それとも、全く別の所にバグがあって、たまたまその影響が出ていると
見たほうが良いでしょうか?