PALN32.DLLを使用したVB32ビット用のサンプルです。
このサンプルプログラムは、弊社Webサーバ資料ページ内(http://www.pervasive.co.jp/support/index_Ref.html)
「Microsoft Visual Basic とPervasive.SQL 2000iを使ったアプリケーションの開発」からの抜粋です。

 このサンプルで使用しているBtrieveファイルのレイアウトは次の通りです。
 [レコードレイアウト]
   内容          データ型        バイト数
  ------------------------------
   メーカID       string      1
   マシンID       integer     2
   マシンNo.      long        4
   マシン名        string      30
   定価          long        4
   割引率         float       4
 [キーの構成]
   キー番号  セグメント番号  キーを構成するフィールド  備考
  -----------------------------------
   0     1        メーカID         重複可能
   0     2        マシンID         重複可能
[注意事項]
・Btrieveの引数にはString型の項目は渡さないでください。(ユーザ定義の中にも指定しないでください。)
文字が化けたり、保護違反が発生する事があります。
 このサンプルでは、Byte型を使用したユーザ定義型とString型を使用したユーザ定義型を使用し、Btrieveに
渡す時とVBで作業する時で使い分けています。

・UniCodeからAnsiCodeへコード変換した後の文字列の長さ(バイト数)を求めるには、
    長さ = LenB(StrConv(String型の変数, vbFromUnicode)) 
としてください。変換前の変数、変換後の変数に対してLenBを実行しても、正しい長さは得られません。
(保護違反が発生する原因となります。)