ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 20:34

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2005年8月09日(火) 01:42 
オフライン

登録日時: 2005年5月31日(火) 01:10
記事: 26
お住まい: 岡山県
選択したファイルがプレイリストに追加されたあと、リスト内のファイル名を選ぶとそれを
DirectMusicが再生してくれるのを組んでますが、どうやればいいでしょうか?

ファイルは「OPENFILENAME」構造体から得ています
コード:
	Dim ofn As OPENFILENAME
	Dim hFile As HANDLE
	Dim buf[MAX_PATH] As WordPtr
    ZeroMemory(VarPtr(ofn), Len(ofn))
	ofn.lStructSize=Len(ofn)
    ofn.hwndOwner=hMainWnd
	ofn.lpstrInitialDir=".\EPL\"
	ofn.lpstrTitle="オーディオを開く"
    ofn.lpstrFile=buf
	ofn.lpstrFilter=Ex"WAVオーディオ(*.WAV)\0*.wav\0Vorbisオーディオ(*.OGG)\0*.ogg\0"
    ofn.nMaxFile=MAX_PATH
    ofn.Flags = OFN_NONETWORKBUTTON or OFN_READONLY or OFN_ALLOWMULTISELECT or OFN_EXPLORER
	SetDlgItemText(hMainWnd,ID_FNAME,buf)
	hFile=CreateFile(buf,GENERIC_READ,FILE_SHARE_READ,ByVal(0),OPEN_EXISTING or OPEN_ALWAYS,FILE_ATTRIBUTE_READONLY or FILE_FLAG_RANDOM_ACCESS or FILE_FLAG_SEQUENTIAL_SCAN,NULL)
	GetOpenFileName(ofn)
	Dim i As Long
	Dim plStr[MAX_PATH] As Byte
	Dim lvItem As LVITEM
	i=lstrlen(buf)-1
	Do
		If buf Then
			lvItem.mask=LVIF_TEXT or LVIF_PARAM
			lvItem.pszText=buf+i+1
			lvItem.iItem=0
			lvItem.iSubItem=0
			lvItem.lParam=pln+1
			SendDlgItemMessage(hMainWnd,PlayList,LVM_INSERTITEM,0,VarPtr(lvItem))
			Exit Do
		End If
		i=i-1
		If i<0 Then Exit Do
	Loop
	dmA9->Stop()
	dmA9->Load(buf)
	If SendDlgItemMessage(hMainWnd,CheckBox1,BM_GETCHECK,0,0)=BST_CHECKED Then
		dmA9->SetRepeats(&HFFFFFFF)
	End If
	SetDlgItemText(hMainWnd,ID_FNAME,buf)
	dmA9->Play()

ファイルは「OPENFILENAME」構造体から得ています

コード:
Sub MainWnd_PlayList_DblClick(ByRef nmListView As NMLISTVIEW)
	Dim buf As Byte
	buf=SendDlgItemMessage(hMainWnd,PlayList,LB_GETTEXT,0,0)
	dmA9_pl->Load(buf)
	If SendDlgItemMessage(hMainWnd,CheckBox1,BM_GETCHECK,0,0)=BST_CHECKED Then
		dmA9_pl->SetRepeats(&HFFFFFFF)
	End If
	SetDlgItemText(hMainWnd,ID_FNAME,buf)
	dmA9_pl->Play()

End Sub

このコードは、Load関数でファイル名を認識する部分がバグになっています

DirectMusicの宣言は別の場所においてありますので宣言済みだけがあります
-------------------------------------------------------
  PlayerEleanore Project
    http://www.zzda.com/eleanore
   mako20
-------------------------------------------------------


通報する
ページトップ
 記事の件名:
投稿記事Posted: 2010年10月24日(日) 15:14 
DirectMusicは文字コードがUNICODEに変換しないと
エラーを返すと思う


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 2 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: Ahrefs [Bot] & ゲスト[34人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean