喫茶XRAYトップページ

[スレッド全体
]

[12302] 別プロセスのメッセージを捕捉返信 削除
2018/9/20 (木) 16:28:00 Mr.XRAY
[DLL上の例外をコピーした文字列をFreeLibraryにアクセスとエラーになる]
http://madia.world.coocan.jp/cgi-bin/DelphiBBS/wwwlng.cgi?print+201809/18090005.txt

でレスしたコードの実行結果です.


[12321] Re:別プロセスのメッセージを捕捉返信 削除
2018/9/22 (土) 07:35:43 SO
▼ Mr.XRAYさん
> [DLL上の例外をコピーした文字列をFreeLibraryにアクセスとエラーになる]
> http://madia.world.coocan.jp/cgi-bin/DelphiBBS/wwwlng.cgi?print+201809/18090005.txt


そもそも、お作法的にバグのような。。。

あと、StrPCopyでエラーにならないって、まぁいいですけど(たまたまだし)、
StrPCopy自体がNULL終端を期待しての動作なので、
void *memcpy(void *buf1, const void *buf2, size_t n);
みたいに、サイズ指定があるものを使用したほうがいいですよね。

通りすがりさんが書いている、「要はWin32APIのような作りにする、ということです。」で分かって欲しいような。

[12323] DLLにおけるエラーおもらし禁止条項返信 削除
2018/9/22 (土) 10:40:45 taka
▼ SOさん
> ▼ Mr.XRAYさん
> > [DLL上の例外をコピーした文字列をFreeLibraryにアクセスとエラーになる]
> > http://madia.world.coocan.jp/cgi-bin/DelphiBBS/wwwlng.cgi?print+201809/18090005.txt
>
> そもそも、お作法的にバグのような。。。


Delphi付属のマニュアル本に掲載されていたような記憶があったので
ヘルプを探してみました

開発者ガイド: Delphi プログラマーズガイド

パッケージと DLL の作成
> DLL とライブラリは,Windows ダイアログでエラーや警告が表示されるのを防ぐために,
> すべての例外を処理する必要があります。


http://docs.embarcadero.com/products/rad_studio/radstudio2007/RS2007_helpupdates/HUpdate4/JA/html/devwin32/idh_creatingpackagesanddlls_xml.html


C++
Docs > Visual C++ > ドキュメント > 並列プログラミング
ランタイムによってスローされた例外
> ランタイムの呼び出しから例外が発生する可能性があります。
> ...
> プログラミング エラーを診断する必要がある場合にのみ、
> 回復不能なエラーをアプリケーション コードでキャッチまたは処理することをお勧めします。
> ...
> アプリケーションの異常終了を防ぐために、コードでランタイムを呼び出す場合は例外が処理されるようにしてください。



[▼次のスレッド]
INCM/CMT
Cyclamen v3.82