掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
sndPlaySoundのCardinalをStringでキャストするには? (ID:45942)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>フォイ様 ご教示ありがとうございます。 試行錯誤でやってみます。 >Mr.XRAY様 ご教示ありがとうございます。 サイトの方でもいつも勉強させていただいてます。 教えて頂いた通りに調べまして 下記ソースに変更した所、うまく行ってるようです。 procedure SoundPlay(Section, Entry, PlayMode: String); var RS:TResourceStream; Modecd: Cardinal; begin Modecd := 0; if Pos('SND_SYNC', PlayMode) > 0 then Modecd := Modecd + $0000; if Pos('SND_ASYNC', PlayMode) > 0 then Modecd := Modecd + $0001; if Pos('SND_NODEFAULT', PlayMode) > 0 then Modecd := Modecd + $0002; if Pos('SND_MEMORY', PlayMode) > 0 then Modecd := Modecd + $0004; if Pos('SND_LOOP', PlayMode) > 0 then Modecd := Modecd + $0008; if Pos('SND_NOSTOP', PlayMode) > 0 then Modecd := Modecd + $0010; if Pos('SND_NOWAIT', PlayMode) > 0 then Modecd := Modecd + $0008; if Pos('SND_FILENAME', PlayMode) > 0 then Modecd := Modecd + $00020000; if Pos('SND_RESOURCE', PlayMode) > 0 then Modecd := Modecd + $00040004; RS := TResourceStream.Create(hInstance, PChar(Section), PChar(Entry)); try sndPlaySound(RS.Memory, Modecd); finally RS.Free; end; end; もう少しテストをしてみます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.