OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

VB4のセットアップで空き容量エラー

  • すぐに回答を!
  • 質問No.204843
  • 閲覧数160
  • ありがとう数2
  • 気になる数0
  • 回答数3
  • コメント数0

VB4のセットアップウィザードで作成した
Setup.exeをWindowsXPへインストールするときに
「空き容量が足りません」のエラーが表示されて
困っています。
(ハードディスクの空き容量が2GB以上のときに
この現象が起こります)

どなたか回避策をご存知の方、ご教授願えますか。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル12

ベストアンサー率 40% (230/562)

ファイルサイズは今まで2GBまたは4GBを超えるわけないと思われていましたが、今は簡単に越えています。

今はディスクサイズを調べるとき2つのLong型の変数を使いますが、昔は1つのLong型の変数で済んでいたので、それらは大変です。

2GBを超えると、VBではいきなり-2GBになってしまいますから、それでディスクがぜんぜん足りないと解釈する場合もあります。

また、たとえば4.001GBの場合、4GBはひとつのLong変数には収まらず、もう1つのLong変数のほうに入ります。
そして残りの0.001GBが通常のほうに入り、ぜんぜん足りないと解釈されます。

>会社のサーバでインストーラを作成する都合上、
サービスパックは却下されました(T_T)どうして?)
企業などの大組織では、サービスパックとかを何も考えずに入れることはできないということです。
現在のシステムが安定している場合、サービスパックをいれて不安定になった場合困るからってことです。
だから、未だにVB4を使っているのではないですか。

しかし、上司はこの現状を理解しているんですかねぇ。
これではHDDの空き容量が決まった数字のときにしかインストールできませんし。
配布や製品化するプログラムなら、大問題です。
上司を説得する、というかわからせるのがいいと思います。
お礼コメント
noname#32133

皆さん、回答ありがとうございました。

結局、下記の方法で回避しました。
1.OSの種類を判別するAPIにてWin16系OSと
Win95OSR2以前とWin98系OSとWinNT系OSを区別
2.16Bitだった場合は既存のソースを実行
3.Win95OSR2未満の場合はそれに対応した
APIで空き容量を取得(既存のソースを実行)
4.それいがいのOSはWin95OSR2以降で使える新しい
API関数にて空き容量・ディスク容量を取得
変数は既存はLong型ですが、Double型を使用しました。

今のところ、問題はなく動いていますので
ご参考までに。
投稿日時 - 2002-02-08 09:20:59
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1

単純に2GB以上の場合、空き容量の計算でオーバーフローを起こしているのだと思いますよ。少なくともVisual Basic 4.0の時代はFAT32はなく、HDDも2GBもあれば十分といった時代だったので。 あとは、Visual Basic 4.0のService Packをあてるとか、ランタイムのバージョンをあげて試してみるとか、だめならばインストーラ自体をほかのものに変更するなどするしか方法はない ...続きを読む
単純に2GB以上の場合、空き容量の計算でオーバーフローを起こしているのだと思いますよ。少なくともVisual Basic 4.0の時代はFAT32はなく、HDDも2GBもあれば十分といった時代だったので。

あとは、Visual Basic 4.0のService Packをあてるとか、ランタイムのバージョンをあげて試してみるとか、だめならばインストーラ自体をほかのものに変更するなどするしか方法はないのではないでしょうか?

ではでは☆
お礼コメント
noname#32133

そうなんですね。。。FATって2GBまでですものね。。。

今回考えられる選択肢は、
1.上司を説得してインストーラの変更をする。
→自腹でインストーラを購入して実証して
説得することになりそうですね。。。
(会社のサーバでインストーラを作成する都合上、
サービスパックは却下されました(T_T)どうして?)

2.やっていいことかどうかわかりませんが、
VB4インストール時に付属のSetup1のソースを
改造してオーバーフローしないように作り変える。
(ホントにやっていいことかどうかわからないで
書いてるので、もし禁止事項に触れるようでしたら
申し訳ありませんがその旨を教えていただけますか)

困っちゃいました。。。
投稿日時 - 2002-01-25 09:23:03
  • 回答No.2
レベル13

ベストアンサー率 59% (729/1235)

私は、残量量をチェックしている部分を取り除いています。 やっていいと思います。 Bookより SETUP132.EXE] SETUP1.VBP から作成する Visual Basic アプリケーションの実行可能ファイルです。 このソース ファイルを変更して、独自のセットアップ プログラムを作成できます。
私は、残量量をチェックしている部分を取り除いています。
やっていいと思います。

Bookより

SETUP132.EXE]
SETUP1.VBP から作成する Visual Basic アプリケーションの実行可能ファイルです。
このソース ファイルを変更して、独自のセットアップ プログラムを作成できます。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ