0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

c++ builder > アプリケーションのオープンで時々エラー > モジュール 'SHELL32.dll'のアドレス 76C03EDD でアドレス 00030002 に対する読取り違反がおきました。 > ::ZeroMemory(&sinfo,sizeof(SHELLEXECUTEINFO)); > 初期化忘れ

Last updated at Posted at 2015-12-25
動作確認
C++ Builder XE4

注意

(追記 2018/11/14)

以下で使用しているZeroMemoryは最適化で吹き飛ぶため、SecureZeroMemory()の使用が推奨されます。

エラーと対策

ShellExecuteEx()を使って他のアプリケーションを開く処理にて、時々だが以下のエラーが出ていた。

モジュール 'SHELL32.dll'のアドレス 76C03EDD でアドレス 00030002 に対する読取り違反がおきました。

コードを見ていて、デジャビュに襲われた。

以下と同じ対策で解決した。
http://qiita.com/7of9/items/7b8e8e5ec4111df6dcf5

::ZeroMemory(&sinfo,sizeof(SHELLEXECUTEINFO));

初期化忘れだった。

他のアプリを扱う処理関連の学習がまだ足りない。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?