- PR -

共有メモリへのアクセス

1
投稿者投稿内容
TOSHILAX
会議室デビュー日: 2002/07/11
投稿数: 4
投稿日時: 2002-07-12 09:11
初めて投稿させて頂きます。

VC++6.0で作成したプログラム内で共有メモリをReadWriteモードでオープン後、
ASP.NET WebアプリケーションからReadOnlyモードでオープンし、共有メモリに
展開されたデータの取得をしたいと思っています。(共有メモリのオープン関数は
VC++6.0で作成したDLLの中にあり、WebアプリケーションではASP.NET Webサービスで
このDLLをImportし、Web参照にて使用しています。)

VS.NET Beta2版では正常に動いていたのですが、製品版に入れ替え実行してみると
プログラムが途中で異常終了するようになってしまいました。(エラーメッセージは何も
出ません。)

ASP.NET Webアプリケーションからオープン関数が呼ばれていることは確認済みです。
DLLのどこでプログラムが止まっているのかを調べてみると、
OpenFileMappingの戻り値が「NULL」になり、ここで異常終了していました。

試しに、VC++6.0で作成したプログラムを起動せずにASP.NET Webアプリケーション内だけで
共有メモリをReadWriteモードでオープン後、ReadOnlyモードでオープンしてみました。
結果は正常終了でした。

Web等でいろいろ探してみましたが、わかりませんでした。
何分初心者なものでわかりにくい説明かと思いますが、
この現象についてご存知の方がいらっしゃいましたらご教授のほど宜しくお願い致します。
kojiishi
会議室デビュー日: 2002/07/21
投稿数: 2
投稿日時: 2002-07-21 00:26
> VS.NET Beta2版では正常に動いていたのですが
:
> OpenFileMappingの戻り値が「NULL」になり、ここで異常終了していました。
からの推測ですが、VS.NET の Beta 2 のあとで、ASP.NET が実行するユーザーアカウントが、システムアカウントから ASPNET へ変更されています。

OpenFileMapping で使用されているファイルが、ASPNET ユーザーで開けるようになっているか確認してみてはどうでしょうか。
1

スキルアップ/キャリアアップ(JOB@IT)