■ 現在のこのページの役立ち度:
表示されない場合こちらのリンクからもご覧になれます。
■ このページの役立ち度を評価する:
役立ち度を評価してください。
(1(左):あまり役立たない - 5(右):大変役立った):
■ ページの共有:
[ サイト内検索 ]
カスタム検索
#8547-0ライブラリってなんですか?しーぴょん2000-03-14(火) 20:37
     #8548-0RE#8547:ライブラリってなんですか?藤代千尋2000-03-14(火) 22:51
#8547-0
ライブラリってなんですか?
VBなどでよく「ライブラリ」ってでてきますが
ヘルプをみてもよくわかりません。
どなたか参考になるヘルプもしくは説明おねがいします。
#8548-0
RE#8547:ライブラリってなんですか?
VB でライブラリといったら「MSDN ライブラリ」つまりヘルプのことでしょうね。(^^ゞ

本当は、汎用的に使える関数や Sub プロシージャ・クラスなどをまとめたものになります。

もともとは C 言語などの低レベル言語のものだとおもいます(自信なし)。こういった言
語は、CPU を直接操作するようなことができる反面、それなりのものを作ると膨大なコード
を書く必要が出てきます。そこで、言語のメーカや各プログラマが、汎用的に使えるコード群、
つまりライブラリを作成・提供します。それを利用すれば、プログラマは少しのコードを書くだ
けですみます。Microsoft の SDK とか MFC もライブラリですね(たぶん)。

VB の場合は、自作の汎用関数をまとめたモジュールなどになるでしょう。以下たとえ話。

ファイルリストボックスから選択したファイルを開こうとするとき、ファイル名のフルパ
スは Path プロパティと選択したアイテムをくっつけたものになります。

  strFullName = File1.Path & "\" & File1.List(File1.ListIndex)

間に円マークを入れているのは、Path プロパティが円マークなしのパスを返すからです。
しかし、このファイルリストボックスが C:\ のときは円マーク付きで返します。すると
ファイル名が C:\\Readme.txt などとなってエラーの元です。回避するために、以下の
ようにします。

  strFullName = File1.Path
  if Right(strFullName,1) <> "\" Then strFullName = strFullName & "\"
  strFullName = strFullName & File1.List(File1.ListIndex)

このような処理はプログラムのいたる所で出てきそうなので、関数にします。
(この関数は、渡されたパスに円マークが無いときだけ、円マークを追加します。)

  strFullName = PathName_LastYenAdd(File1.Path) & File1.List(File1.ListIndex)

この関数は汎用的に使えるので、MFileLibrary.bas という専用のモジュールに保存します。
このモジュールのファイルを、別のプロジェクトに追加すれば、同じコードを何度も書かず
に済むわけです。これが「ライブラリ」です。

MFileLibrary.bas には、もっとたくさんの関数を入れてもいいでしょう。たとえば、以下の
ようなものです(機能を想像してみてください)。
  PathName_Connect
  PathName_GetPathPart, PathName_GetNamePart, PathName_GetExtPart
  FileName_AddExt
  File_Exist
  File_AppendOneLine

モジュールファイルとしただけでも、同じ関数を書かなくてすむので、とても楽になります。
ただし、コンパイルしたときには、各プログラムに同じファイルが含まれることになります。
これを回避するには、モジュールを DLL に変更してしまうのです。すると、ライブラリは1
つの独立したファイルとなって、コンパイルに含める必要もなくなります。
このページと関連する記事:
#996-1「App.Path」について2004-02-06(金) 10:19
#39576-0MyPathプロシージャについて・・・2001-02-28(水) 01:10
#29194-0VBで開発について2000-09-04(月) 13:43
#21209-0EXE作成時の強制終了・・・。2001-06-04(月) 13:29
#14498-0フルパスからフォルダ名取得2001-02-14(水) 18:05
#10949-0変数の値の取得について2000-05-26(金) 00:20
#22373-0テキストボックス内のデータ2001-08-12(日) 15:54
#11554-0Command関数の使い方教えてください1999-12-13(月) 16:17
#2066-0Path or File Not Found2004-05-11(火) 21:53
#12593-0ディレクトリ(ファイル)の取り出し方2000-11-07(火) 05:33
お探しの情報は見つかりましたか?お困りの問題は解決しましたか?
サイト内検索, 似た記事検索で見つからなくてもあきらめずに掲示板で質問してみましょう。
VB初心者友の会があなたのお役に立てれば幸いです。また、本ページの投稿者の方々にこの場を借りて感謝致します。
本ページは過去ログを集めて自動構成しています。よろしければこのページに関するフィードバックをお願いします。
(※ 構成の誤り、広告等の不適切な記事、リンク切れ、読めないページの報告など)