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 (記載なし)
Copyright © 2013 Power Future Co., Ltd.