DOBON.NET DOBON.NETプログラミング掲示板過去ログ

自己消滅コードについて

環境/言語:[VB]
分類:[VB6以前]

前回の失敗をふまえて
ご迷惑をおかけしてすいませんm−−m
聞きたいことがあります
今どうしても自爆するプログラムを書きたくてネットを回って、
おそらくフリーの自爆もとい自己消滅コードを拾ってきました
構造的にまったくわからないので仕組みを理解したいのですが
問題は質問しようにも作者様のサイトがわからないということです
記述形式はVB6.00で背景は黒い夜の星空みたいな感じで
他にもいろいろなコードが置いてありました。
どなたかご存じないでしょうか?
あとVB.netで自己消滅プログラムを書けた方はいらっしゃいますか?
直接削除することはできないといわれましたのでどんな考え方で作ったのか知りたいですm−−m
自己のレベルはかなり低いです よろしくお願いしますm−−m
前回の立てたものは申し訳ないですm−−m
  • 題名: Re[1]: 自己消滅コードについて
  • 著者: 魔界の仮面弁士
  • 日時: 2010/06/17 12:54:30
  • ID: 26959
  • この記事の返信元:
  • この記事への返信:
  • ツリーを表示
2010/06/17(Thu) 12:58:21 編集(投稿者)

■No26958に返信(頭我悪蔵さんの記事)
> 構造的にまったくわからないので仕組みを理解したいのですが

VB6 のフォームには
 1) 作成されているが、ロードされていない。
 2) ロードされているが、表示されていない。
 3) 表示されている。
 4) メモリおよびシステム リソースが完全に解放されている。
の 4 状態があります。

フォーム表示前は 4 の状態。
フォームの Initialize イベント発生時は 1 の状態。
フォームの Load イベント発生時は 2 の状態。
通常利用時は 3 の状態ですね(非表示にされると 2 に戻ります)。
表示されていたフォームが、コードあるいはユーザー操作等で閉じられると
フォームの Unload イベントが発生して、1 の状態に戻ります。
そして Terminate イベントが発生した後は、4 の初期状態です。


> 今どうしても自爆するプログラムを書きたくて
VB6 の標準 EXE 形式なら、ロードされている Form を
すべてアンロードさせれば、アプリケーションは終了します。

もし、破棄されていないフォーム(状態1)があっても、最後のフォームが
アンロードされた段階で、すべてのフォームが解放される(状態4)仕組みです。

なお、状態3 のフォームの数は「n = DoEvents()」で分かります。
また、「n = Forms.Count」を使うと、ロード済みフォームの総数が分かります。


> あとVB.netで自己消滅プログラムを書けた方はいらっしゃいますか?
終了させる方法はいろいろありますが、VB6 と VB.NET では方法が異なりますので
VB6 の質問スレッド内で VB.NET の質問を重ねるのは避け、再質問してください。
(VB.NET バージョンによって、使える構文が異なるため、環境明示も忘れずに)
Vb6の質問だからもう一回質問しなおしますm−−m
ありがとうございますm−−m

い いかん 頭がパンクしそうだ(大体妄想で補ったが)
もしかして VB.NETとはだいぶ違うのか いや 俺が未熟だからか

もっとまなばないとなぁ(汗)
回答感謝ですm−−m ありがとうーーーm−−m
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板