カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

動画ファイル(.avi)の長さ(総時間)を取得する

Windowsエクスプローラーにてファイルのプロパティの概要タブで確認できる内容を取得する。
AVIやMP3には付加情報(ID3タグ情報)が格納されている。

※この方法は簡易的なものでID3.orgで規定されているフォーマットに沿って読み出すのとは異なり、主要な項目のみ取得するものである。

まず、このプログラムにはShell32.dllを使用します。 続きを読む…»

10,627 views

Visual C# axMediaPlayer

axMediaPlayerコンポーネント

ツールボックス上で右クリック->[アイテムの選択]
COMコンポーネントタブを選択し、一覧の「Windows Media Player」をチェック

プロパティ
settings.mute (boolean) 消音
settings.URL (string) ファイルパス
settings.autoStart (boolean) 起動時、自動再生するか
Ctlcontrols.currentPosition (integer) 再生位置(秒数)
currentMedia.duration 再生中のファイルの総時間
続きを読む…»

2,416 views

Direct Playerのエラー

エラーメッセージ:This program requires at least 3MB of free virtual memory to run.

【発生要件】
使用パソコンの実メモリが1GB以上、及び仮想メモリが1GB以上のとき発生する

【対処方法】
[マイコンピュータを右クリック]-[プロパティ]-[詳細設定タブ]-[パフォーマンスの設定ボタン]-[詳細設定タブ]-[仮想メモリの変更ボタン]
仮想メモリの設定値を「初期サイズ」「最大サイズ」ともに1GB以下に設定する

3,084 views

オートマクロ

ACCESSファイルを開いたときに自動的に実行されるマクロ

・マクロを「autoexec」という名前で作成する。
・モジュールに書いた関数を実行することもできます。
※Subルーチンではダメ。Functionで宣言する。
関数を実行する場合は、アクションに「プロシージャの実行」を選択し、
プロシージャ名に関数名()を入力する。

ここで設定したオートマクロは、起動時の設定での「フォーム/ページの表示」よりも優先されます。

2,135 views

参照設定を追加せずDAOを利用する

Dim db As Object
Dim rst As Object

Set db = DBEngine.Workspaces(0).Databases(0)

MsgBox db.Name

Set rst = db.OpenRecordset("テーブルまたはクエリ名")

Do Until rst.EOF
    Debug.Print rst("フィールド名")
    DoEvents
    rst.MoveNext
Loop

rst.Close: Set rst = Nothing
db.Close: Set db = Nothing

OpenRecordsetメソッドにdbOpenDynasetなどの引数を指定したい場合
定数が使用できないので、下記を参考に数値を入力してください。

dbOpenTable 1
dbOpenDynamic 2
dbOpenDynaset 3
dbOpenSnapshot 4

SQL Serverへ接続する場合について(※2016.06.14追記)

SQL ServerのID列を持つテーブルを開くときは、dbSeeChanges(512)オプションを使用するようエラーが発生します。
その場合は以下のように開きます。

Set rst = db.OpenRecordset("テーブルまたはクエリ名", 2, 512)

CurrentDbの推奨(※2020.10.28追記)

Access2000以降ではデータベースをする際、上記のコードにある「DBEngine.Workspaces(0).Databases(0)」よりも「CurrentDb」の使用が推奨されているようです。

Set db = CurrentDb

また、別のデータベースを参照する必要があるときは以下のようにしてください。

Set db = DBEngine.Workspaces(0).OpenDatabase("Another.mdb")

参考URL:CurrentDb メソッド (Access) | Microsoft Docs

9,489 views