如何将unicode字符串传递给异常引发消息并捕获它:
try
if some <> some2 then
raise Exception.Create('Cannot connect to Sever');
...
...
except
on E: Exception do
mError(E.Message);
exit;
end;这个想法是本地化的。
发布于 2017-03-01 16:23:03
您可以声明一个使用WideString而不是string的异常类。在TNT Unicode库中可以找到一个很好的例子。该库不仅引入了Unicode异常类,还提供了使异常处理机制处理Unicode异常所需的所有相关搭建。
例如,假设引发的异常到达顶级异常处理程序。您希望它是Unicode感知的,TNT库可以确保这一点。或者您希望操作系统错误被本地化。同样,还有一些额外的工作需要TNT库来处理。
我的建议是,如果您希望在应用程序中使用Unicode,在Unicode之前的Delphi中,您应该采用TNT Unicode库。如果由于某些原因你不能采用它,至少在你自己的编码中使用它的源代码作为灵感。
https://stackoverflow.com/questions/42526387
复制相似问题