こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Visual Basic Scriptを使ったFlashの再生

パソコン初心者です。教えて下さい。第4の携帯電話会社「イー・モバイル」の携帯情報端末「EM・ONE」には「Opera Mobile」と「Internet Explorer Mobile」の二つのブラウザが搭載されています。双方ともVer.7のFlash Playerがプラグインとして入っています。ところが、Operaのほうは殆んどのFlashを再生するのに、「IEモバイル」では殆んどのFlashを再生できません。この事をメーカーのSHARPにメールで問い合わせたら以下のような回答が届きました。

1)Flashについて
Internet Explorer Mobileでは、Flash製作時のプログラムの
作り方によってはそのFlashコンテンツが再生できないため、
プログラム側で予め「Internet Explorerでは動きません」という
宣言をすることがございます。
これが、「マニュアルに記載のFlashコンテンツの再生は行われない
ように設定している場合」に該当します。
これはFlashのバージョンによるものではなく、プログラムの
作り方によるものです。
(具体的に申し上げますとVisual Basic Scriptを使ったFlashはInternet
Explorer Mobileで動作しません。
これはFlashのバージョンによるものではなく、プログラムの
作り方によるものです。
(具体的に申し上げますとVisual Basic Scriptを使ったFlashはInternet
Explorer Mobileで動作しません)

例えば下記HPはこれに該当します。
よみうりランド http://www.yomiuriland.co.jp/
インフォシーク http://www.infoseek.co.jp/

上記の内容ですが、これって本当のことでしょうか?

投稿日時 - 2007-07-07 23:53:22

QNo.3148247

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

アカウント名から正体がばれそうですが(笑)。あっちに書くとポイントが必要ですからね。こっちはタダだし。
おそらく質問者さんにはそこまで理解できないと思うので、この質問を見ている技術系な方広く一般に向けての回答と思ってください。

結論から言って私もblogの内容どおりではないかと思います。
IE for mobileはVB Script に対応していません。

指摘のサイトについていうと、
http://www.yomiuriland.co.jp/common/js/topflash.js
に問題の判定処理(sniffする部分)が入っています。
else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0
&& (navigator.appVersion.indexOf("Win") != -1)) {
document.write('<SCR' + 'IPT LANGUAGE=VBScript\> \n'); //FS hide this from IE4.5 Mac by splitting the tag
document.write('on error resume next \n');
document.write('MM_FlashCanPlay = ( IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash." & MM_contentVersion)))\n');
document.write('</SCR' + 'IPT\> \n');
}
で、<SCRIPT LANGUAGE=VBScript\> に始まるVBScriptのコードを書き出して実行させていますね。

したがってVBScriptが動かないIE for mobileでは動作しないのです。
インターネットの世界ではこのようにソースが丸見えなので、勝手にコードが流用されやすく、mobileのことなど知らずにコピペして作ってるサイトが多いんでしょう。
さらに下のほうには<embed>タグもいてこれもサポート外です。

投稿日時 - 2007-07-14 00:48:54

補足。
俺はActionScriptがマトモに書けるわけでも、
作成ソフトを使って作れるわけでもない。

質問文の説明では、この段階の話をしているように聞こえてしまうが、
それならば、

『具体的に申し上げますとVisual Basic Scriptを使ったFlashはInternet
Explorer Mobileで動作しません。』

は全然別事例なので例として出すには不適切だと思う。
この例を出してきたということは・・・やっぱりこのBlogの内容の話だと俺は思うのだけれど。

投稿日時 - 2007-07-10 20:53:54

>「人力検索はてな」に投稿しました

とりあえず事情説明をしてきました。
(って、質問者が見るまで他の回答者は見られないのかな?)

#途中までの訳はKumappusさんの通り。
後は
●「どういうコードを書くと」「どういう判定になって失敗するのか」
●「失敗しないためにどう書くべきなのか」
ってテストケースが話のメインだ。

#尤もコレが判ってもからといって、ユーザー側に出来ることは無いと思うけど。
#この機種ってUA文字列書き換えられるんだろうか?

投稿日時 - 2007-07-10 20:49:56

該当サイトがそれにあたるかどうかは確認していませんが,
信頼性の高い引用元はあるようです。(と、言うかその回答はこのBlogのコピーだと思われますw)

IEMobile Team Weblog
http://blogs.msdn.com/iemobile/archive/2006/12/18/why-doesn-t-adobe-flash-always-render-for-ie-mobile.aspx

投稿日時 - 2007-07-07 23:59:19

補足

有難うございます。こんなサイトがあったとは…。しかし英文なので微妙な所まで理解できません。この問題の発端は「Yahoo!JAPAN」や「教えて!goo」等(その他無数)のサイトのFlashがOpera Mobileでは再生されるのにIEモバイルでは全く再生されない、という所からはじまっています。殆んどのウェブサイトがVisual Basic Scriptで作られているのでしょうか。この英文の翻訳を「はてな」(http://www.hatena.ne.jp/)の「人力検索はてな」に投稿しました(http://q.hatena.ne.jp/1183977378)。よろしければご回答下さい(お礼は1000円に設定しました)。マイクロソフトは嘘を言っているのではないでしょうか。

投稿日時 - 2007-07-09 22:57:10

あなたにオススメの質問