2014年8月28日木曜日
Pythonの学習(3)
(1) Print文
・末尾に「,」(カンマ)を付与して出力をすると、改行されずに出力する
・ フォーマット出力 : 「%s」は文字列、「%d」は数値
・ファイル出力
obj = open("test.txt","w")
print >> obj , "test test"
(2) 例外処理
・try,except,finallyを使用する
・raiseを使ってエラーを発生させる(呼び出し元にエラーを返し、呼び出し元でエラー対応処理を行う)
def calc(value_1,value_2):
result = 0
try:
result = value_1 + value_2
except:
print "エラー!"
raise
finally:
print "終了"
return result
def test(list_1,list_2):
try:
print calc(list_1[0],list_2[0])
print calc(list_1[1],list_2[1])
print calc(list_1[2],list_2[2])
except:
print "エラー発生!"
「raise」をコメントアウトするとtest関数のexcept配下の処理が実行されなくなります
・エラー内容(スタックトレース)の取得
処理を実行中にエラーが発生すると、エラー内容(スタックトレース)が標準出力へ出力されますが、それを文字列で取りだす事も可能です。
try:
print test(100,"200") ' "200"は文字列なのでエラーとなる
except:
print "--------------------------------------------"
print traceback.format_exc(sys.exc_info()[2])
print "--------------------------------------------"
(3)インポート
下のコードの自作モジュール「testpy」という名前で作業ディレクトリに保存する
------ test.py -----------------------
class tes_tclass:
def __init__(self):
print "create test_class"
def test_method(self,str):
print "call test_method"
print str
-----------------------------
import test
testclass1 = test.test_class() ' 「モジュール名.クラス名」
testclass1.test_method("1") ' 「test_class」が保持している関数の呼出
from test import test_class ' 「from」の後にモジュール名、「import」の後にクラス名
testclass2 = test_class() ' クラス名で直接使用出来
testclass2.test_method("2")
スパイウェアアラートの削除
最近スパイウェアアラートというのが表示されるようになりました。
(またかよー、といわないでね)
この困った現象を削除する方法を調べました。
原因は、アドウェア(Yontoo)と言われています。
http://matome.naver.jp/odai/2136762383134288301
インストールした記憶はないのだが。。。。。
Yontooについて、上記URLに説明がありますので、読んでみてください。
しかし、私のPCにはYontooがみつかりませんでした。
したがって、危険なアドオンを削除を試みました。
①コントロールパネルを開き【ネットワークとインターネット】の項目を選ぶ
②インターネットオプションの【ブラウザーのアドオンの管理】を選ぶ
③インターネットのプロパティ画面の【アドオンの管理】を選ぶ
④怪しいものを探し出し、無効またはアンインストールする。
しかし、あやしいのはみつかりません。
(またかよー、といわないでね)
この困った現象を削除する方法を調べました。
原因は、アドウェア(Yontoo)と言われています。
http://matome.naver.jp/odai/2136762383134288301
インストールした記憶はないのだが。。。。。
Yontooについて、上記URLに説明がありますので、読んでみてください。
しかし、私のPCにはYontooがみつかりませんでした。
したがって、危険なアドオンを削除を試みました。
①コントロールパネルを開き【ネットワークとインターネット】の項目を選ぶ
②インターネットオプションの【ブラウザーのアドオンの管理】を選ぶ
③インターネットのプロパティ画面の【アドオンの管理】を選ぶ
④怪しいものを探し出し、無効またはアンインストールする。
とりあえず、IE,Firefoxの履歴を全部削除しました。
これでしばらく様子を見てみます。
駆除ツールについては以下に説明がありました
(ただ、駆除ツールダウンロードで「スパイウェアアラーと」が発生したらモトモコモないですけど)
http://note.chiebukuro.yahoo.co.jp/detail/n248560
YouTubeに削除仕方の動画がありました。参考にしてください。
https://www.youtube.com/watch?v=TSzFkQsvKZI
駆除ツールについては以下に説明がありました
(ただ、駆除ツールダウンロードで「スパイウェアアラーと」が発生したらモトモコモないですけど)
http://note.chiebukuro.yahoo.co.jp/detail/n248560
YouTubeに削除仕方の動画がありました。参考にしてください。
https://www.youtube.com/watch?v=TSzFkQsvKZI
2014年8月27日水曜日
Pythonの学習(2)
(1) エスケープシーケンス
・
シングルクォーテーション(')「\」をシングルクォーテーションの前に付加する。
print
'1234¥'
567890
'
・
ダブルクォーテーション
(")
「\」をダブルクォーテーションの前に付加
する。 print
"1234¥"
567890
"
・バックスラッシュ(\)
「\」を2つ続けて記述します。print
"1234¥¥567890"
・改行
「\n」と記述。
print
"1234¥n567890"
・タブ
「\t」と記述します。
print
"1234¥t567890"
(2) if文
if分の例:
if value_1 == "Python":
pass
elif value_1 == "python" and value_2 == "test":
print "2番目がTrue"
elif value_1 == "TEST" or value_2 == "PYTHON":
print "3番目がTrue"
※
「pass」は、何もしません」という命令で、この記述が無いとコードエラーとなります(3) Switch文
pythonではswitch-case文は存在しません。
if_elseで代用する。
(4) Range関数
・range(10) は (0,1,2,3,4,5,6,7,8,9)という内容のリストとなる
・range(2,10)は (2,3,4,5,6,7,8,9)という内容のリストとなる
・range(-2,10)は (-2,-1,0,1,2,3,4,5,6,7,8,9)という内容のリストとなる
2014年8月26日火曜日
【Windows 7】画面をキャプチャする際にマウスカーソルを含める方法
マニュアル作成時に、PrintScreenで、画面にカーソルがなくて困ったことありませんか?。
『Windows 7』の画面をキャプチャする際にマウスカーソルを含める技を見つけたので
紹介します。
<PrintScreen>
画面をキャプチャして、クリップボードに保存し『Paint』などの画像ツールに貼り付けます。
『Print Screen』キー:デスクトップ全体をキャプチャ
『Alt + Print Screen』キー:アクティブなウィンドウのみキャプチャ しかし、この方法ではマウスカーソルを含めることができません。
『拡大鏡』という『Windows 7』に標準で備わっている『拡大鏡』というツールを利用すると、
マウスカーソルを含めてキャプチャできます。
1、『拡大鏡』の起動方法
①『[スタート] メニュー』から起動できます。
『[スタート] メニュー』→『すべてのプログラム』→『アクセサリ』→『コンピューターの簡単操作』→『拡大鏡』
※ [スタート] ボタンをクリックし、「拡大鏡」と入力でも可能
②『拡大鏡』は、起動してから数秒ぐらいすると、以下のような表示に切り替わります。
③『拡大鏡』の真ん中をクリックします。
③マイナス,プラスのボタンでサイズを100%(=等倍)にし、『表示』メニューから『固定』を選択
下が拡大鏡を使って、キャプチャした画像です。マウスカーソルがキャプチャできたことが確認できます。
『Windows 7』の画面をキャプチャする際にマウスカーソルを含める技を見つけたので
紹介します。
<PrintScreen>
画面をキャプチャして、クリップボードに保存し『Paint』などの画像ツールに貼り付けます。
『Print Screen』キー:デスクトップ全体をキャプチャ
『Alt + Print Screen』キー:アクティブなウィンドウのみキャプチャ しかし、この方法ではマウスカーソルを含めることができません。
『拡大鏡』という『Windows 7』に標準で備わっている『拡大鏡』というツールを利用すると、
マウスカーソルを含めてキャプチャできます。
1、『拡大鏡』の起動方法
①『[スタート] メニュー』から起動できます。
『[スタート] メニュー』→『すべてのプログラム』→『アクセサリ』→『コンピューターの簡単操作』→『拡大鏡』
※ [スタート] ボタンをクリックし、「拡大鏡」と入力でも可能
②『拡大鏡』は、起動してから数秒ぐらいすると、以下のような表示に切り替わります。
③『拡大鏡』の真ん中をクリックします。
③マイナス,プラスのボタンでサイズを100%(=等倍)にし、『表示』メニューから『固定』を選択
下が拡大鏡を使って、キャプチャした画像です。マウスカーソルがキャプチャできたことが確認できます。
2014年8月23日土曜日
Webアプリケーション通信
Webアプリケーションは,クライアント(Webブラウザ)から送られてくるリクエストを受け取って動作します。
通信(リクエスト・レスポンス)の仕組みとしては、次の方法が行われます。
1、通信型
・プル(pull)型
Webアプリケーション(ブラウズなど)がHTTPリクエストを行い、レスポンスを受ける。
サーバーから情報を「引き出す」ことによって動作するのでプルと呼ばれる
・プッシュ(push)型
Webアプリケーションが,サーバ側主導でレスポンスを受ける。
サーバーがクライアント側に情報を「押し込む」動作になるのでプッシュと呼ばれる
・ポーリング(polling)
定期的(例えば1秒間隔)でリクエストを行い、サーバーからレスポンス(最新情報を得る)を受ける
Webアプリケーションでは、サーバーの情報が更新されていてもいなくても,定期的にサーバーにアクセスする必要があります。
その場合,ユーザーが多くなってくると,サーバーへのアクセス数が非常に多くなってしまい、負荷が高くなってサーバダウンを考慮しなければなりません。
したがって、ポーリングで情報取得するより、プッシュ型で情報取得を考慮する必要があります。
その方法として、以下の方法があります。
第2回 Comet---プッシュ型のWebアプリケーションを作る
http://itpro.nikkeibp.co.jp/article/COLUMN/20080220/294242/Cometではポーリングが発生しなくなります。
したがって,サーバーへのアクセス数を減らすことができます。
また,サーバーに書き込みがあったタイミングで情報が送られてくるので,リアルタイム性も向上することになります。
2、セッション
(1)HTTP
Webアクセスに使うHTTPには「セッション」という概念がない。
そこで、サイト側が主導権を取って,Webブラウザとの間で情報をやりとりすることで,複数ページにまたがる一連のWebアクセスを「セッション」として扱うようになっている。
さらにWebサイトは,確立したセッションの処理の進行状態を管理する。
参考URL:http://itpro.nikkeibp.co.jp/article/COLUMN/20081010/316684/
(2) セッション管理
Webアプリケーションで、ログインからログアウトまでが,一つのセッションとなります。
Webアプリは複数Webページにまたがっても,ユーザーを識別して,前のWebアクセスの処理結果を引き継いで処理を続ける。その陰では,複数のWebアクセスを関連付け,処理の進行状態を管理するセッション管理のしくみが働いている。
「ログイン」を必要とするサイトはセッション管理を行います。
セッション管理は、システム上で一意となるセッションIDをユーザーのブラウザとWebアプリケーション(または、サーバ)で共有することによって、Webアプリケーションがユーザーを特定することが可能となる。
共有する仕組みは、Cookieを利用するものと、GET/POSTパラメータなどを利用するものとで大きく2つに分けられる。
いずれの仕組みもWebアプリケーション側がセッションIDを発行してユーザーへの送信を行い、ユーザーが以降のアクセスでそのセッションIDを毎回Webアプリケーションへ送信する形となる。
参考URL:http://www.atmarkit.co.jp/ait/articles/0810/21/news133_2.html
セッションIDの管理は不備(セッションハイジャック)のないようにしっかり管理をする必要があります。
対策として、以下があります。
・推測困難なセッション ID を利用する
・セッション ID を URL に含めない
・HTTPS 通信で利用する Cookie には secure 属性を付与する
⇒HTTPS 通信時のみ Cookie の値を Webサーバーに送信する
・ログイン後にセッションを新規に開始する
・クラインアント、サーバ間のセッションIDを都度更新する
参考URL:http://www.websec-room.com/2013/03/09/497
また、2度押し対策も検討する必要がある。
ラベル:
Silverlight,
Webサイト,
その他,
ブラウザ
2014年8月19日火曜日
【もう一度、英語をやり直そう】英会話日記(8/13)
一週間たつのは早いものです。
今日のWhat's New? は、土曜日に中学校用英語の本かって、勉強してたことを説明しました。
文法は大事と先生はいってましたけど、結構からかわれました。
同級生は宿題をやってきて、私はimaginary Studyなので、来週はちゃんとやるように、といわれてしまいました。
今週の英会話の復習です。
人に、勧めるときに使うrecommend をどのように使うのかです(強くすすめるか、弱くすすめるか
で文法が異なります)
I recommend <noun> ...ing.
> 使い方 I recommend Czech beer. or I recommend trying Czech beer.
You can try Czech beer < 弱いお勧めをするときに使用
You should try Czech beer < 普通にお勧めをするとき
You must try Czech beer < 強く勧めるとき
次のURLに詳しく書いてありました。
http://kiwi-english.net/1432
>recommennd の後はing形だけしか使わない
ここにかいてあるように、
recommend + おすすめする物
recommend + おすすめする物 + to + 誰に
recommend + (that) + 誰 + 何する
と使うようですね
学校の英語で、このような細かいことを勉強した記憶はないのですが、
英会話の勉強だと実用的なので、なかなか面白いものです、
今日のWhat's New? は、土曜日に中学校用英語の本かって、勉強してたことを説明しました。
文法は大事と先生はいってましたけど、結構からかわれました。
同級生は宿題をやってきて、私はimaginary Studyなので、来週はちゃんとやるように、といわれてしまいました。
今週の英会話の復習です。
人に、勧めるときに使うrecommend をどのように使うのかです(強くすすめるか、弱くすすめるか
で文法が異なります)
I recommend <noun> ...ing.
> 使い方 I recommend Czech beer. or I recommend trying Czech beer.
You can try Czech beer < 弱いお勧めをするときに使用
You should try Czech beer < 普通にお勧めをするとき
You must try Czech beer < 強く勧めるとき
次のURLに詳しく書いてありました。
http://kiwi-english.net/1432
>recommennd の後はing形だけしか使わない
ここにかいてあるように、
recommend + おすすめする物
recommend + おすすめする物 + to + 誰に
recommend + (that) + 誰 + 何する
と使うようですね
学校の英語で、このような細かいことを勉強した記憶はないのですが、
英会話の勉強だと実用的なので、なかなか面白いものです、
【上がる下がるには、理由がある、丁半では、儲からない】FXキャッシュバックについて
キャッシュバックキャンペーンが入金されました。
-----------------------------------------------------------------
【外為ジャパンFX】「口座開設キャンペーン」における
キャッシュバックが完了致しました。
------------------------------
キャッシュバック金額
10000円
------------------------------
PC版取引ツール『外為ジャパンFX SIMPLE』より画面上部の
メニューバー[入金・出金]>[入出金履歴]
【外為ジャパンFX】では今後もお客様に喜んでいただける
ような、魅力的なキャンペーンを開催してまいります。
その他ご質問・ご不明な点がございましたら、
Eメール又はお電話にてお気軽にお問い合わせください。
今後とも株式会社 DMM.com証券をよろしくお願いいたします。
------------------------------------------------------------------------------------------------------------------
7月締めで、8月15日入金でした。
なんかうれしいのですが、結果的には4千円ほどしかもうかりませんでした。
400Lotかうには、12000円ほどスプレッドで払わなければいけないので、なにもしないと
-2000円まけるので、4千円勝てばいいほうなのかもしれない。
いろいろ調べると、入会方法によっては、プラスになうことが分かった。
例えば、
FXを新規で行うのであれば、「羊飼いのFXブログ経由で申し込む」のがお得であることが判明した。
(外為ジャパン申し込み時にしっていたら、5千円もうかっていた。しまった。。。。.)
http://fxforex.seesaa.net/
さらに、
「ザイFX」経由でも、お得であることが判明。
http://zai.diamond.jp/list/fxnews/backnumber?date=20140815
外為ジャパン口座開設前に、知っていたら楽天1500ポイントも取得可能だった
https://www.af-mark.jp/gaitame/index_tg.html
口座開設前には、よく調べてから、解説しましょう!
https://www.af-mark.jp/gaitame/index_tg.html
2014年8月12日火曜日
【上がる下がるには、理由がある、丁半では、儲からない】戦国FX(8/12)
FXって、攻めるか、守るか、まるで昔小さいころにおこなった戦国武将ゲームのような気がしてきた。
このゲーム知っているだろうか。
小さいころすごくはまって、おかげで日本史が大好きになりました。
まずは、昨日までの分析と諜報活動です。
(1) 情報分析・諜報活動
隣国(米国)の殿様が、ミサイル(大砲)うって、バカンス(鷹狩)にいってしまった。
ミサイル売った時は、円高となったが、バカンスでゴルフやっているようなので、戦はしばらく
ないと判断されたようで、だんだんと円高になってきた。
しばらくは、円安がすすむと思われる。
(2) 今日の戦(戦略)
特に、注目すべき指標はないような気がする。
特にあげれば、
・18時00分:独)ZEW景況感調査
・18時00分:欧)ZEW景況感調査
円安が進み徐々に103円台に進むと思われる。
(3) 自国の兵糧
YJ国(19.1万石(建国時20万石)), 籠城(0.5万石、0.5万石(赤字玉))
GJ国(15万石{建国時16万石))
まずは、建国時の石高を目標。
ゲリラ戦で、すこしづつ兵糧をためていこう。
このゲーム知っているだろうか。
小さいころすごくはまって、おかげで日本史が大好きになりました。
まずは、昨日までの分析と諜報活動です。
(1) 情報分析・諜報活動
隣国(米国)の殿様が、ミサイル(大砲)うって、バカンス(鷹狩)にいってしまった。
ミサイル売った時は、円高となったが、バカンスでゴルフやっているようなので、戦はしばらく
ないと判断されたようで、だんだんと円高になってきた。
しばらくは、円安がすすむと思われる。
(2) 今日の戦(戦略)
特に、注目すべき指標はないような気がする。
特にあげれば、
・18時00分:独)ZEW景況感調査
・18時00分:欧)ZEW景況感調査
円安が進み徐々に103円台に進むと思われる。
(3) 自国の兵糧
YJ国(19.1万石(建国時20万石)), 籠城(0.5万石、0.5万石(赤字玉))
GJ国(15万石{建国時16万石))
まずは、建国時の石高を目標。
ゲリラ戦で、すこしづつ兵糧をためていこう。
2014年8月8日金曜日
Facebookで共有エラーになるので、調査した
携帯電話や、PCで、ブログの共有を行うとエラーになってしまう。
原因及び対策を調査してみました。
1)PCでの共有解消方法
とりあえず、テンプレートを変えたところ、500エラー(内部サーバーエラー)となる。
何が原因か分からない状態です。
とりあえず、Bloggerの設定をいろいろいじってみたところ、「モバイルとメール」のメールを使用して投稿の設定をなくしたら、PCからは投稿できるようになりました。
ただ、PCでいまだにエラーとなるときがあるので、困ったものだ。。。。
(一回投稿したものをfacebook上で削除して、再度共有したらエラーになりました)
2) facebookの共有
facebookでの投稿をみてみると、どうやら画像がなんか悪さしてそうだ。
(左上の「その他」「facebookで共有」で、「友達のタイムラインでシェア」すると、「http://img2.blogblog.com/html/buttons/blogger-simple-white.gif」が悪いと表示されます。
いろいろ試してみたところ、「画像のついた投稿」は「共有が出来る」、「画像のない投稿」は「共有が出来ない」ことが判明した。
画像のない投稿は、Bloggerのbologger-simple-white.gifをリンクしてしまい、facebookの方でのフィルタリングでエラーになってしまうのではないだろうか。
今後はなるべく画像を使うようにしょうと思う。
原因及び対策を調査してみました。
1)PCでの共有解消方法
とりあえず、テンプレートを変えたところ、500エラー(内部サーバーエラー)となる。
何が原因か分からない状態です。
とりあえず、Bloggerの設定をいろいろいじってみたところ、「モバイルとメール」のメールを使用して投稿の設定をなくしたら、PCからは投稿できるようになりました。
ただ、PCでいまだにエラーとなるときがあるので、困ったものだ。。。。
(一回投稿したものをfacebook上で削除して、再度共有したらエラーになりました)
2) facebookの共有
facebookでの投稿をみてみると、どうやら画像がなんか悪さしてそうだ。
(左上の「その他」「facebookで共有」で、「友達のタイムラインでシェア」すると、「http://img2.blogblog.com/html/buttons/blogger-simple-white.gif」が悪いと表示されます。
いろいろ試してみたところ、「画像のついた投稿」は「共有が出来る」、「画像のない投稿」は「共有が出来ない」ことが判明した。
画像のない投稿は、Bloggerのbologger-simple-white.gifをリンクしてしまい、facebookの方でのフィルタリングでエラーになってしまうのではないだろうか。
今後はなるべく画像を使うようにしょうと思う。
2014年8月7日木曜日
【上がる下がるには、理由がある、丁半では、儲からない】FXのお勉強(8/7)
(1)昨日のおさらい
http://fxforex.seesaa.net/
日経平均の下げ幅拡大などで売りが先行、米債利回りの低下などで、売りが進み、ニューヨーク時間午後に入るとさらに急落し、その後は再び102円台を回復して引けています。
買ではいっているので、夜中に起きていれば、チャンスはあったけど、早寝早起きの人にはつらかった。
(2) 勝負開始
103円台をバックに戻り売りをねらってみたい。
超短期的に売り買いして、利益を積み重ねていこう。
(3) 今日の勝負どころ
21時30分:米)新規失業保険申請件数
の指標でどうなるか。
今日も円高になりそう。塩漬けポジをどうしよう。
「ウクライナ情勢の緊迫化」こらがどうも尾をひいている。。。
http://fxforex.seesaa.net/
日経平均の下げ幅拡大などで売りが先行、米債利回りの低下などで、売りが進み、ニューヨーク時間午後に入るとさらに急落し、その後は再び102円台を回復して引けています。
買ではいっているので、夜中に起きていれば、チャンスはあったけど、早寝早起きの人にはつらかった。
(2) 勝負開始
103円台をバックに戻り売りをねらってみたい。
超短期的に売り買いして、利益を積み重ねていこう。
(3) 今日の勝負どころ
21時30分:米)新規失業保険申請件数
の指標でどうなるか。
今日も円高になりそう。塩漬けポジをどうしよう。
「ウクライナ情勢の緊迫化」こらがどうも尾をひいている。。。
2014年8月6日水曜日
【もう一度、英語をやり直そう】英会話日記(8/6)
毎回What's New (最近どうよ?)で、英会話が始まります。
クラスメイトは、市川花火大会の話をしてました。
私は、先週頭痛で1.5日会社を休んだお話をしました。
頭痛といえば、headacheと思っていたが、この単語は1~2時間の頭痛をいうそうで、1日以上だと、Migraineというそうです。
音節mi・graine
http://www.novartis.co.jp/english/lesson/111.html
先週のテストの結果が来ました。
1ヶ月通って、少しだけアップ(10段階の2.5)しました。
今は、底辺段階なので、これから頑張って何とか一年後には会話に困らないようにしたいと思う。
(会話中、「え~と、なんだっけ?」ではだめですね)
<今日の学習>
日常で、比喩表現で「とても」とか使いますが、英語だとつい、Veryだけ使ってしまいます。
実際は、次のような使い分けをするそうです。
Adverbs(in order)
・extremely ⇒ 100%とても
・very ⇒ 75%とても
・pretty ⇒ 50%とても
・somewhat ⇒ 25%とても
・a little(formal) / a bit(a conversational) ⇒0~25%とても
Note: 'really' can mean 'extremly' or 'very' depending on your voice.
(しゃべり方で、extremly か veryのどちらに近いかになります。
派手にリーリイといえば、extremlyとなるそうです。
ちょっと使うのははずかしいですが。
somewhatも同様な感じです。
somewh ↑ at といってみましょう)
最近、耳が遠くなってきたのと、集中力が乏しくなってきた気がします。
年に負けないように日々精進しないと、アルツハイマーになんかなりそうな気もしてきました。
頑張らないと。
【上がる下がるには、理由がある、丁半では、儲からない】FXのお勉強(8/6)
(1)昨日のおさらい
http://fxforex.seesaa.net/
昨日は、「米ISM非製造業景況指数」の予想が上回って、ドル買いが走り、ウクライナ報道で円買いが加速したようだ。
(2) 勝負開始
ヨーロッパ市場開始(5時くらい)から 、それまでのチャートの動きと一切関係がなく、大きく相場が動き始める。
ちょっとした変動であわてないことです。
最初は知らないので、あわてて失敗してしまった。
「ロンドンフィキシング」(0時)に、特に注意することです。
http://www.lfx.jp/market-europe.html
(3) 今日の勝負どころ
21:30 米)貿易収支
の指標でどうなるか。
その他考慮すること。
・米国の長期金利
・米国の 金融政策の思惑
http://fx.aol.jp/201408061045/
このチャートどこかでみたような。。。。。
Silverlightでの音楽ファイルの再生
音声ファイル再生方法について、まとめてみました。
コードビハインド(C#)側で定義の仕方です。
(1) mp3ファイルの再生
動画や音声といったメディアを扱うための MediaElement というコントロールを使用します。
xaml側でMainPageにMediaElementを配置するか、C#側で、Children.AddでMediaElementを追加します。
MediaElement me = new MediaElement();
me.MediaEnded += new RoutedEventHandler(me_MediaEnded);
this.LayoutRoot.Children.Add(me);
me.Source = new Uri("C:/work/alert.mp3", UriKind.Absolute);
me.Volume = 1.0;
me.Play();
外部ファイルとして、音再生するため、mp3ファイルを選んで、
・プロパティ ウィンドウで「ビルド アクション」を「なし」
⇒mp3ファイルの場合、標準では「なし」になっています
・「出力ディレクトリにコピー」を「新しい場合はコピーする」
に設定します。
尚、Silverlight をホストする Web アプリケーションを作成している場合は、メディア ファイルを Web アプリケーション プロジェクトの ClientBin (Silverlight アプリケーションを保持するフォルダー) にコピーしておく必要があります。
<埋め込まれたリソースにする場合>
プロジェクトに効果音として使いたいmp3(またはwma)を登録します。
登録したファイルは、ソリューションエクスプローラで「ビルドアクション」を「埋め込まれたリソース」にします。
(XAMLに直接MediaElementを書く場合は「埋め込まれたリソース」では駄目のようです)
リソースとして埋め込んだmp3は、GetManifestResourceStreamで読み込みます。
System.Reflection.Assembly asm = this.GetType().Assembly;
Sound = asm.GetManifestResourceStream("SoundTest.Resources.sound.mp3");
MediaElement me = new MediaElement();
me.SetSource(Sound); me.MediaEnded += new RoutedEventHandler(me_MediaEnded); SoundCanvas.Children.Add(me);
me.Play();
void me_MediaEnded(object sender, RoutedEventArgs e)
{ MediaElement me = sender as MediaElement;
SoundCanvas.Children.Remove(me);
}
MediaElementはビジュアルツリーに登録しなくても、オブジェクトの参照を保持してさえいれば、音声は再生されます。
しかし、ビジュアルツリーに登録しないと、再生が終わってもMediaEndedイベントが発生しないようです。
その為、MediaEndedでリソース解除しないと、SoundCanvas.Children.Countが120を超えたあたりでエラーが発生するようです。
(2) wavファイルの再生
MediaElementでは、wavファイルの再生はできません。
参考URL:
http://social.msdn.microsoft.com/Forums/ja-JP/6f8f832a-e111-4f63-8c45-7ebddae32fcf/silverlight-wav?forum=silvelightdotnetja
したがって、 別箇対応いたします。
以下のURLが参考になります。
http://techblog.hilife-jp.info/2011/09/silverlight-5-4-realtime-sound/
http://10rem.net/blog/2011/04/13/silverlight-5-using-the-soundeffect-class-for-low-latency-sound-and-play-wav-files-in-silverlight
コードビハインド(C#)側で定義の仕方です。
(1) mp3ファイルの再生
動画や音声といったメディアを扱うための MediaElement というコントロールを使用します。
xaml側でMainPageにMediaElementを配置するか、C#側で、Children.AddでMediaElementを追加します。
MediaElement me = new MediaElement();
me.MediaEnded += new RoutedEventHandler(me_MediaEnded);
this.LayoutRoot.Children.Add(me);
me.Source = new Uri("C:/work/alert.mp3", UriKind.Absolute);
me.Volume = 1.0;
me.Play();
外部ファイルとして、音再生するため、mp3ファイルを選んで、
・プロパティ ウィンドウで「ビルド アクション」を「なし」
⇒mp3ファイルの場合、標準では「なし」になっています
・「出力ディレクトリにコピー」を「新しい場合はコピーする」
に設定します。
尚、Silverlight をホストする Web アプリケーションを作成している場合は、メディア ファイルを Web アプリケーション プロジェクトの ClientBin (Silverlight アプリケーションを保持するフォルダー) にコピーしておく必要があります。
<埋め込まれたリソースにする場合>
プロジェクトに効果音として使いたいmp3(またはwma)を登録します。
登録したファイルは、ソリューションエクスプローラで「ビルドアクション」を「埋め込まれたリソース」にします。
(XAMLに直接MediaElementを書く場合は「埋め込まれたリソース」では駄目のようです)
リソースとして埋め込んだmp3は、GetManifestResourceStreamで読み込みます。
System.Reflection.Assembly asm = this.GetType().Assembly;
Sound = asm.GetManifestResourceStream("SoundTest.Resources.sound.mp3");
MediaElement me = new MediaElement();
me.SetSource(Sound); me.MediaEnded += new RoutedEventHandler(me_MediaEnded); SoundCanvas.Children.Add(me);
me.Play();
void me_MediaEnded(object sender, RoutedEventArgs e)
{ MediaElement me = sender as MediaElement;
SoundCanvas.Children.Remove(me);
}
MediaElementはビジュアルツリーに登録しなくても、オブジェクトの参照を保持してさえいれば、音声は再生されます。
しかし、ビジュアルツリーに登録しないと、再生が終わってもMediaEndedイベントが発生しないようです。
その為、MediaEndedでリソース解除しないと、SoundCanvas.Children.Countが120を超えたあたりでエラーが発生するようです。
(2) wavファイルの再生
MediaElementでは、wavファイルの再生はできません。
参考URL:
http://social.msdn.microsoft.com/Forums/ja-JP/6f8f832a-e111-4f63-8c45-7ebddae32fcf/silverlight-wav?forum=silvelightdotnetja
したがって、 別箇対応いたします。
以下のURLが参考になります。
http://techblog.hilife-jp.info/2011/09/silverlight-5-4-realtime-sound/
http://10rem.net/blog/2011/04/13/silverlight-5-using-the-soundeffect-class-for-low-latency-sound-and-play-wav-files-in-silverlight
2014年8月5日火曜日
Pythonの学習(1)
Pythonの勉強の始まりです。
参考URLは次となります。
Python-izm
http://www.python-izm.com/
ブログでは、文法等の基本事項は、除いて、私個人が気になったところを記述していきます。
(1) Pythonのバージョン
「2.x」と「3.x」があるが、互換性がありません(2.xで作成したものは、3.xで動きません)
どちらがいいのかといえば3.xはまだ進化中ですので、2.xの方が良いと思います。
(2) プログラムの実行
Pythonのインタープリタ(python.exe)へパスが通っていない場合は、パスを通してから実行します。
パスを通したら、DOS窓からでも、pyファイルクリックでも実行できます。
(3) コメント
行頭の「#」(シャープ)を付けます。
複数のコメントアウトは、「'」(シングルクォーテーション)もしくは「"」(ダブルクォーテーション)3つでコメントアウトしたい部分を囲みます。
'''
print "test"
print "end"
'''
(4)文字列の取り扱い
・ 数値を文字列に変換
val = 100
print str(val) + "円"
結果: 100円
・ 文字列の置換 name = "t.asano"
print name.replace("t.", "m.")
結果: m.asano
・ 文字列の分割
val ="1,2,3,4"
print val.spilt(",")
結果: ['1', '2', '3', '4']
・ 文字列のゼロ埋め
val = "1234"
print val.rjust(10,"0")
結果: "0000001234"
・ 文字列検索
val = "asano"
print val.startswith("asa")
結果: Ttrue
・ 大文字小文字変換
val = "T.asano"
print val.upper()
print val.lower()
結果: T.ASANO t.asano
(5) 文字列を数値変換
val = "100"
print int(val) + 100
結果: 200
※文字列100は変数に"100"で定義、数字は 100(""なし)で定義する。文字列と数字の足し算をしないことに注意
(6) タプル
初期化後の変更が不可能ですので、共通で使用する関数などの返り値などに、使用する
変更可能にした場合は、リストにします
(7) 算術子
インクリメント(++)、デクリメント(--)はありません
(8) コマンド引数
main内で、以下のように使います
param = sys.argv
print argv[0]
(9) プログラム終了
sysモジュールのexit関数を利用します。
import sys
sys.exit()
参考URLは次となります。
Python-izm
http://www.python-izm.com/
ブログでは、文法等の基本事項は、除いて、私個人が気になったところを記述していきます。
(1) Pythonのバージョン
「2.x」と「3.x」があるが、互換性がありません(2.xで作成したものは、3.xで動きません)
どちらがいいのかといえば3.xはまだ進化中ですので、2.xの方が良いと思います。
(2) プログラムの実行
Pythonのインタープリタ(python.exe)へパスが通っていない場合は、パスを通してから実行します。
パスを通したら、DOS窓からでも、pyファイルクリックでも実行できます。
(3) コメント
行頭の「#」(シャープ)を付けます。
複数のコメントアウトは、「'」(シングルクォーテーション)もしくは「"」(ダブルクォーテーション)3つでコメントアウトしたい部分を囲みます。
'''
print "test"
print "end"
'''
(4)文字列の取り扱い
・ 数値を文字列に変換
val = 100
print str(val) + "円"
結果: 100円
・ 文字列の置換 name = "t.asano"
print name.replace("t.", "m.")
結果: m.asano
・ 文字列の分割
val ="1,2,3,4"
print val.spilt(",")
結果: ['1', '2', '3', '4']
・ 文字列のゼロ埋め
val = "1234"
print val.rjust(10,"0")
結果: "0000001234"
・ 文字列検索
val = "asano"
print val.startswith("asa")
結果: Ttrue
・ 大文字小文字変換
val = "T.asano"
print val.upper()
print val.lower()
結果: T.ASANO t.asano
(5) 文字列を数値変換
val = "100"
print int(val) + 100
結果: 200
※文字列100は変数に"100"で定義、数字は 100(""なし)で定義する。文字列と数字の足し算をしないことに注意
(6) タプル
初期化後の変更が不可能ですので、共通で使用する関数などの返り値などに、使用する
変更可能にした場合は、リストにします
(7) 算術子
インクリメント(++)、デクリメント(--)はありません
(8) コマンド引数
main内で、以下のように使います
param = sys.argv
print argv[0]
(9) プログラム終了
sysモジュールのexit関数を利用します。
import sys
sys.exit()
2014年8月4日月曜日
有料なリンクは、SEOにきくのか?
有料リンクは、SEO対策に有効と推薦されているけど、どの程度有効なのだろうか?。
とかんがえたことありませんか?
そのような方には、次の記事をおすすめします。
“有料リンクは今でもSEOに効く”の真実と判断のカギ など10+2記事
http://web-tan.forum.impressrd.jp/e/2014/08/01/17974
結局SEOって、サイトの「質と量」になるようですね。
単純に無料ツールで、サイトを作成すると、質は保証されないので、後付けでSEO対策が
必要になると思います。
後から直すのは、大変ですので、サイト作成時には、SEOまで考えて作成するのが、直帰率向上の一番の近道になるようです。
この記事の中で書かれている(「グーグルの評価を上げるためにメインコンテンツのソースは上部に記述すべきか」)ように、SEOって、はっきりした回答がないので、嘘情報もながれているようなので、はっきりした対応は、対応して、対策していこうとも思う。
とかんがえたことありませんか?
そのような方には、次の記事をおすすめします。
“有料リンクは今でもSEOに効く”の真実と判断のカギ など10+2記事
http://web-tan.forum.impressrd.jp/e/2014/08/01/17974
結局SEOって、サイトの「質と量」になるようですね。
単純に無料ツールで、サイトを作成すると、質は保証されないので、後付けでSEO対策が
必要になると思います。
後から直すのは、大変ですので、サイト作成時には、SEOまで考えて作成するのが、直帰率向上の一番の近道になるようです。
この記事の中で書かれている(「グーグルの評価を上げるためにメインコンテンツのソースは上部に記述すべきか」)ように、SEOって、はっきりした回答がないので、嘘情報もながれているようなので、はっきりした対応は、対応して、対策していこうとも思う。
2014年8月3日日曜日
iponeのメールが起動できなくなった場合の対応策
昨日から、iphoneのメールを起動すると、メールを受信中にすぐ落ちるようになりました。
大変困ったので、まずネットで対応策を調べてみました。
【Tips】iPhone5(iOS6)でメールアプリが起動直後に落ちる時の対処法
http://nobon.me/?p=497
対応策があったので、さっそく、試してみました。
・電源ON/OFFで再起動
・不要なアプリ削除
・表示を少なくする
・プレビューをなくす
・画像を読み込むをオフにする
・設定のリセットで、「キーボードの変換学習をリセット」
結果的には、これらでは、直りませんでした。
そこで、「設定」「一般」「モバイルデータ通信」をオフにして、
メールを全部削除したら、メールが見れるようになりました。
ただし、削除しても、ゴミ箱にあるので、ごみ箱を空にするまでは、すぐ落ちる
現象は直りませんでしたので、注意してください。
⇒これが一番重要でした。(削除してもゴミ箱にあると、悪さするようです)
※送られてきたメールの一部でどうも、不具合を発生させる原因があったようです。
もし、同じトラブルが起こったら、参考にしてください。
大変困ったので、まずネットで対応策を調べてみました。
【Tips】iPhone5(iOS6)でメールアプリが起動直後に落ちる時の対処法
http://nobon.me/?p=497
対応策があったので、さっそく、試してみました。
・電源ON/OFFで再起動
・不要なアプリ削除
・表示を少なくする
・プレビューをなくす
・画像を読み込むをオフにする
・設定のリセットで、「キーボードの変換学習をリセット」
結果的には、これらでは、直りませんでした。
そこで、「設定」「一般」「モバイルデータ通信」をオフにして、
メールを全部削除したら、メールが見れるようになりました。
ただし、削除しても、ゴミ箱にあるので、ごみ箱を空にするまでは、すぐ落ちる
現象は直りませんでしたので、注意してください。
⇒これが一番重要でした。(削除してもゴミ箱にあると、悪さするようです)
※送られてきたメールの一部でどうも、不具合を発生させる原因があったようです。
もし、同じトラブルが起こったら、参考にしてください。
登録:
投稿 (Atom)