PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
22857 06/11/29 20:31:42 RE(4):PB7.0: api関数(mciSendString)について By ada0915
22856 06/11/29 20:29:13 RE(3):PB7.0: api関数(mciSendString)について By ada0915
22855 06/11/28 22:11:13 RE(2):PB7.0: api関数(mciSendString)について By めめ
22854 06/11/27 09:43:02 RE(1):PB7.0: api関数(mciSendString)について By 梶
22853 06/11/25 22:02:05 PB7.0: api関数(mciSendString)について By ada0915

カテゴリ:スクリプトの記述
日付:2006年11月28日 22:11 発信者:めめ
題名:RE(2):PB7.0: api関数(mciSendString)について

ada0915さん、こんばんは。

>PBでWAVEファイル(音声ファイル)をコントロールしたいと思いまして、mciSendStringというAPI
>関数をみつけ、また、WEBでVisualBasicについて説明をみつけてためしたところ、うまくいきません。
>(以下、st_1.textに値が返ってきません)

こちらは pb8 ですが少し確認したところ、以下で値を取得することができました。
もしかするとまだ問題があるかも知れませんが、取り敢えずご報告まで。

//API関数の宣言
Function long mciSendStringA(string lpstrCommand, ulong lpstrReturnString,UnsignedLong  
uReturnLength,UnsignedLong  hwndCallback ) Library \"winmm.dll\"
Function ULong lstrcpyn(ref string dst,string src, UnsignedLong length) Library \"kernel32.DLL\" 
Alias for \"lstrcpynA\" //アドレス取得用
Subroutine MemCopy(ref string dest,long src, Long cbCopy) Library \"Kernel32.DLL\" Alias 
for \"RtlMoveMemory\" //ポインタの値取得用

//以下クリックコマンド
string RetBuffer
retbuffer = Space(20)
string MCICommandString

string str_Filename
str_Filename = \"E:\\FILENAME.WAV\" //ファイル名

Long ll_sts
UnsignedLong lul_RetBuffer

MCICommandString = \'status \"\' + str_Filename + \'\" length\'
lul_RetBuffer = lstrcpyn(RetBuffer, RetBuffer, 0)
ll_sts = mciSendStringA(MCICommandString, lul_RetBuffer, Len(RetBuffer), 0)
MemCopy(RetBuffer, lul_RetBuffer, Len(RetBuffer))

st_1.text = string(double(RetBuffer)/1000)



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.