<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-1714579185874286158</atom:id><lastBuildDate>Tue, 13 Oct 2009 02:50:08 +0000</lastBuildDate><title>Lisolutionux</title><description>覚えたことや学んだことを忘れぬようにメモる新人のブログです。</description><link>http://lisolutionux.blogspot.com/</link><managingEditor>noreply@blogger.com (Hiro)</managingEditor><generator>Blogger</generator><openSearch:totalResults>24</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-5702681154999145006</guid><pubDate>Fri, 25 Jul 2008 02:48:00 +0000</pubDate><atom:updated>2008-07-25T12:00:50.085+09:00</atom:updated><title>iPhone 03 D4</title><description>現在使用しているスマートフォンはWILLCOMのAdvansed W-ZERO3esだが、現在同社からWILLCOM 03やWILLCOM D4が登場した&lt;br /&gt;&lt;br /&gt;03は仕様機種の後継機で、デザインも一身しインターフェースも一新された&lt;br /&gt;&lt;br /&gt;が、どことなくiPhoneに対抗している間も否めない&lt;br /&gt;&lt;br /&gt;iPhone&lt;br /&gt;話題性で購入されたユーザーも大半いると思うが、実際問題どうなのだろうか？&lt;br /&gt;&lt;br /&gt;個人的にはiPod Touchに常時ネット接続可能で電話が使えるというイメージ&lt;br /&gt;&lt;br /&gt;各個人がどのような用途に使うかは自由なので書かないけど、電話の機能としては受けが悪いのではないだろうかとも思えるし、羨ましがるとも思える&lt;br /&gt;&lt;br /&gt;過去にWILLCOMから初代W-ZERO3が登場したときに不思議がっていた光景が今iPhoneではどのような反応なのだろうか？&lt;br /&gt;&lt;br /&gt;よく分からなくなりそうなので割愛&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;iPhoneは話題性だけでここまで知名度が高くなったとかってに思ってしまっている自分としては、このままWILLOMのスマートフォンを使い続けようと思う&lt;br /&gt;&lt;br /&gt;iPhoneを使うもWILLCOM社製品を使うのは個人の自由だが、今後続いていくのはどちらか見比べてから検討するのもまた楽しみだと思う&lt;br /&gt;&lt;br /&gt;今後iPhoneがどこまで伸びるか楽しみだし、WILLCOM社製品がどこまで進化するのか楽しみで仕方ない&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-5702681154999145006?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2008/07/iphone-03-d4.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-395518130452701761</guid><pubDate>Mon, 07 Apr 2008 08:14:00 +0000</pubDate><atom:updated>2008-04-07T17:37:05.714+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>OS</category><title>[OS]Windows Vista 感想</title><description>業務地が代わり開発は現在Vistaで行っている。&lt;br /&gt;&lt;br /&gt;さまざまな難点が出たのでまとめてみる。&lt;br /&gt;&lt;br /&gt;管理者権限がうるさい。&lt;br /&gt;互換性が低い&lt;br /&gt;GUIが使いにくい&lt;br /&gt;過去のバージョンとの違いが多いので使い慣れるまでが大変&lt;br /&gt;初心者には難しいと思う&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・管理者権限がうるさい&lt;br /&gt;&lt;br /&gt;ソフトやアプリをインストールしたり実行したりする際にいちいち出現する確認を求める質問が多すぎる。&lt;br /&gt;過去バージョンのアプリなどをインストールすると、またいちいちインストールが完了できたかどうかの確認が出る。&lt;br /&gt;&lt;br /&gt;そんなの自分で判断できるやろ？と思ってしまった。&lt;br /&gt;&lt;br /&gt;また自分のPCで作成したファイルを他の人へ渡して、使用する際に上書き保存ができなくなるときもある。&lt;br /&gt;&lt;br /&gt;管理者が違うための問題と勝手に判断してるが、そう見ても問題ないのではないだろうか？&lt;br /&gt;&lt;br /&gt;この確認をなくす方法もあるが、このOSを理解した人や、ヘビーユーザーには容易い事だろうが、ライトユーザーには優しくない。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・互換性が低い&lt;br /&gt;&lt;br /&gt;現状XPで十分と判断されているためか、Vistaに対応しているソフトウェアが少ない。&lt;br /&gt;&lt;br /&gt;もちろん使用できないわけではないが、上記に書いたように、OS側で判断ができないため確認の質問が現れてしまう。&lt;br /&gt;&lt;br /&gt;このソフトウェアを使用後、終了するとまた確認の質問が現れることもしばしばある。&lt;br /&gt;&lt;br /&gt;いままで強気だったPCがいきなり弱気になったように感じてしまうのは私だけだろうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・GUIが使いにくい&lt;br /&gt;&lt;br /&gt;グラフィックは確かにきれいだが、XPまでの流れを完全に断ち切り、新たにUIを使用しているため、ユーザーは過去のバージョンと照らし合わせながら使用しているのではないだろうか？&lt;br /&gt;&lt;br /&gt;スタートメニューにしてもまったく別物となっているので、戸惑ったことが多いと思う。&lt;br /&gt;&lt;br /&gt;過去バージョンと同様のGUIにすることは可能だが、かかる負荷は一緒なのであまり意味がない。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・過去のバージョンとの違いが多いので使い慣れるまでが大変&lt;br /&gt;&lt;br /&gt;上記のGUIの項にも書いたが、XPまでの流れを断ち切っているため使用方法を覚えるところから始めなければならない。&lt;br /&gt;&lt;br /&gt;そういうことが好きな物好きも中に入ると思うが、どうせ使うのであれば今までと同じ使い勝手であって欲しいと思う。&lt;br /&gt;&lt;br /&gt;そうでなければOSの性能差を確認することが難しいと思う。&lt;br /&gt;&lt;br /&gt;新しいOSには大抵新しいスタイルや楽しみ方があるだろうけど、大変だった。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;・初心者には難しいと思う&lt;br /&gt;&lt;br /&gt;これまでの項を見ても分かるとおり、ヘビーユーザーですら始め慣れるまで苦労しているのだから、ライトユーザーには難しいのではないだろうか？&lt;br /&gt;&lt;br /&gt;近くに詳しい人間があるのであればその都度連絡を取り確認すればいいだろうが、いない場合どうしたらよいのだろうか？&lt;br /&gt;&lt;br /&gt;結局ユーザーは不安になる一方だと思った。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Windows7が1年以内に登場するらしい。&lt;br /&gt;&lt;br /&gt;どうやらMicrosoftはVistaを見限ったのではないだろうかとおもう。&lt;br /&gt;&lt;br /&gt;XPをベースに、Vistaの機能を取り入れていけば使用ユーザーも増えるのではないだろうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しかしVista登場までかなりの年月がかかっているのに、この時期にもう発表しているということははじめからVistaは捨石だったのではないだろうか？&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しばらくは2000、XP、Vistaを使用していくだろうが、Vistaにはそろそろ慣れたいものだ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-395518130452701761?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2008/04/oswindows-vista.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-402619883386753342</guid><pubDate>Fri, 18 Jan 2008 07:51:00 +0000</pubDate><atom:updated>2008-01-18T16:54:17.667+09:00</atom:updated><title>色々とお詫び</title><description>どういうきっかけかは知らないけれど、このページを見てくれた皆様へ。&lt;br /&gt;&lt;br /&gt;色々とコメントなども残っていなかったので気にしてませんでしたが、サンプルを書いているところなどで表示されていない箇所やインデントがなってなくて汚かったりしている箇所が多々見つけました。&lt;br /&gt;&lt;br /&gt;色々対策をしてみたのですがうまく表示できませんでしたのでここでお詫び申し上げます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;次からはこれらのことに気をつけて書いていきたいと思います。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-402619883386753342?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2008/01/blog-post.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-305606416724880804</guid><pubDate>Fri, 18 Jan 2008 04:24:00 +0000</pubDate><atom:updated>2008-01-18T16:50:24.670+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>C#</category><title>[C#]XMLの読み込み 書き込み</title><description>とあることをやるためにDBを使わずXMLを使うことになったのでとりあえず書き残します。&lt;br /&gt;&lt;br /&gt;始めにXmlを操作するので宣言をしておく&lt;br /&gt;ついでにパスを取得したりもするのでIOの宣言もしておく&lt;br /&gt;using System.Xml;&lt;br /&gt;using System.IO;&lt;br /&gt;&lt;br /&gt;public class XmlIo&lt;br /&gt;{&lt;br /&gt;  XmlDocument doc = new XmlDocument();&lt;br /&gt;  //絶対パスを取得しファイルを指定する&lt;br /&gt;  string xmlPath = System.IO.Directory.GetCurrentDirectory();&lt;br /&gt;  string xmlFile = "data.xml";&lt;br /&gt;  #region XML読み込み&lt;br /&gt;  public void ReadXml(string nodes)&lt;br /&gt;  {&lt;br /&gt;    XmlDocument doc = new XmlDocument();&lt;br /&gt;    doc.Load(xmlFile);&lt;br /&gt;    //リストに引数を渡す&lt;br /&gt;    XmlNodeList list = doc.SelectNodes(nodes);&lt;br /&gt;    #if DEBUG&lt;br /&gt;    foreach (XmlNode node in list)&lt;br /&gt;    {&lt;br /&gt;      System.Diagnostics.Debug.Write(node.InnerText + "\n");&lt;br /&gt;    }&lt;br /&gt;#endif&lt;br /&gt;  }&lt;br /&gt;#endregion&lt;br /&gt;  #region XML書き込み&lt;br /&gt;  public void SaveXml()&lt;br /&gt;  {&lt;br /&gt;    XmlDocument doc = new System.Xml.XmlDocument();&lt;br /&gt;    var estate = doc.CreateElement("estate");&lt;br /&gt;    var name = doc.CreateElement("name");&lt;br /&gt;    name.AppendChild(doc.CreateTextNode("○○"));&lt;br /&gt;    estate.AppendChild(name);&lt;br /&gt;    var terop = doc.CreateElement("terop");&lt;br /&gt;    terop.AppendChild(doc.CreateTextNode("XMLの書き込み"));&lt;br /&gt;    estate.AppendChild(terop);&lt;br /&gt;    var items = doc.CreateElement("items");&lt;br /&gt;    estate.AppendChild(items);&lt;br /&gt;    doc.AppendChild(estate);&lt;br /&gt;    //デバッグ時はXmlを上書きされないようにする&lt;br /&gt;#if DEBUG&lt;br /&gt;    string debugXml = xmlPath + "/../xml" + xmlFile;&lt;br /&gt;    var writer = new System.Xml.XmlTextWriter(debugXml, Encoding.UTF8);&lt;br /&gt;#else&lt;br /&gt;    var writer = new System.Xml.XmlTextWriter(xmlPath + xmlFile, Encoding.UTF8);&lt;br /&gt;#endif&lt;br /&gt;    writer.WriteStartDocument();&lt;br /&gt;    writer.Formatting = System.Xml.Formatting.Indented;&lt;br /&gt;    doc.WriteTo(writer);&lt;br /&gt;    writer.Close();&lt;br /&gt;  }&lt;br /&gt;#endregion&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;XmlDocumentを使ってやりとりを行っています。&lt;br /&gt;ReadXml()では引数にXMLのタグ(?)を書くようにします。&lt;br /&gt;&lt;br /&gt;リストに引数が渡り、その部分のデータを取得してます。&lt;br /&gt;#if DEBUGの部分ではデバッグ時に確認のため出力ウィンドウに取得したデータを表示させるようにしてます。&lt;br /&gt;&lt;br /&gt;SaveXml()に引数はないです。&lt;br /&gt;&lt;br /&gt;現在未完成なので説明とかも簡略化します。&lt;br /&gt;varは、intやchar等のいろんな型に対応しています。&lt;br /&gt;しかしローカル変数としか使えません。&lt;br /&gt;&lt;br /&gt;CreateElementで始め、AppendChildで終わらせる。&lt;br /&gt;例&lt;br /&gt;&lt;estate&gt;&lt;estate&gt;&lt;br /&gt;  ・&lt;br /&gt;  ・&lt;br /&gt;  ・&lt;br /&gt;&lt;/estate&gt;&lt;/estate&gt;&lt;br /&gt;&lt;br /&gt;とイメージしてもらえれば幸いです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#ifDEBUGではデバッグ中に書き出すファイルが上書きされると困る場合お使いください。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;新年ですね。&lt;br /&gt;&lt;br /&gt;昨年は３ヶ月もしないうちにいろんな人に見てもらえ、驚いてます。&lt;br /&gt;&lt;br /&gt;しかしながらあまり書く時間と気力がないのでのっそのっそとやってます。&lt;br /&gt;&lt;br /&gt;今年もかけるときがあったら書こうと思います。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-305606416724880804?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2008/01/cxml.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-2832784335784027811</guid><pubDate>Fri, 18 Jan 2008 04:16:00 +0000</pubDate><atom:updated>2008-01-18T13:24:08.218+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>oracle</category><title>[oracle]一時表領域の作成と変更</title><description>自動拡張したら良いんだろうけれど、面倒なので新しく一時領域を作ってインポートしたりしました。&lt;br /&gt;&lt;br /&gt;新しい一時領域を作成(1G分の領域TEMP2の作成)&lt;br /&gt;create temporary tablespace &lt;span style="color:#ff9900;"&gt;TEMP2&lt;/span&gt; TEMPFILE '&lt;span style="color:#ff9900;"&gt;temp2.dbf&lt;/span&gt;' size 1000M;&lt;br /&gt;&lt;br /&gt;ユーザーのデフォルト一時表領域の変更(TEMP2に変更)&lt;br /&gt;ALTER DATABASE DEFAULT TEMPORARY TABLESPACE &lt;span style="color:#ff9900;"&gt;TEMP2&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;これで新しい一時表領域が変わったはずです。&lt;br /&gt;&lt;br /&gt;確認&lt;br /&gt;SELECT USERNAME, TEMPORARY_TABLESPACE FROM DBA_USERS;&lt;br /&gt;&lt;br /&gt;TEMPORARY_TABLESPACEの欄がTEMP2になっていれば成功です。&lt;br /&gt;&lt;br /&gt;不要になった表領域の削除&lt;br /&gt;drop table space &lt;span style="color:#ff9900;"&gt;'表領域名'&lt;/span&gt; includeing contents;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-2832784335784027811?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2008/01/oracle.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-5564925064177232416</guid><pubDate>Thu, 13 Dec 2007 04:05:00 +0000</pubDate><atom:updated>2007-12-13T13:09:49.185+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>oracle</category><title>[oracle]ユーザーに権限を与える</title><description>前回インポートについて書きましたが、DBAのロール権限を持っていないと出来ないことが発覚。&lt;br /&gt;(これに気づくまで約1日かかってました。最初から知ってる人に聞くのが一番って事ですね)&lt;br /&gt;&lt;br /&gt;まずはじめに権限を持ってるユーザーでログインします。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ロールをユーザーに付与する&lt;br /&gt;GRANT ロール TO 権限を与えるユーザー名 [IDENTIFIED BY password][WITH ADMIN OPTION];&lt;br /&gt;&lt;br /&gt;ロールをユーザーに付与するには、GRANT文で付与するロール名を指定し、TO句で付与するユーザー名を指定します。&lt;br /&gt;&lt;br /&gt;IDENTIFIED BY句&lt;br /&gt;IDENTIFIED BY句に続けてパスワードを指定すると、既存ユーザーを明確に識別できます（ユーザーが存在しない場合は新規にユーザーが作成されます）。&lt;br /&gt;&lt;br /&gt;WITH ADMIN OPTION句WITH ADMIN OPTION句を指定すると、&lt;br /&gt;　　・ロールがGLOBALロールでない場合、そのロールをほかのロールに付与可能&lt;br /&gt;　　・ロールをほかのロールから取り消すことが可能　&lt;br /&gt;　　・ロールへのアクセスに必要な認可を変更するため、ロールを変更可能　&lt;br /&gt;　　・ロールを削除可能になります。&lt;br /&gt;&lt;br /&gt;ということです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-5564925064177232416?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/12/oracle_13.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-6949013078120938462</guid><pubDate>Tue, 11 Dec 2007 07:30:00 +0000</pubDate><atom:updated>2007-12-11T16:42:00.496+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>oracle</category><title>[oracle]dmpファイルのインポートとエクスポート</title><description>そんなに項目がないのであればツールなどでSQLを書けばいいんだけれど、かなり大きなモノになると大変なのでdmpファイルにするらしい。&lt;br /&gt;&lt;br /&gt;oracle crientがインストールされていることが最低条件です。&lt;br /&gt;&lt;br /&gt;dmpファイルの作成方法&lt;br /&gt;DOSプロンプトを開いて&lt;br /&gt;exp  &lt;span style="color:#ff9900;"&gt;ユーザ名&lt;/span&gt;&lt;span style="color:#ff9900;"&gt;/&lt;/span&gt;&lt;span style="color:#ff9900;"&gt;パスワード&lt;/span&gt;@&lt;span style="color:#ff9900;"&gt;設定しているtns &lt;/span&gt;&lt;span style="color:#000000;"&gt; file=&lt;span style="color:#ff9900;"&gt;作ったファイルを置く場所&lt;span style="color:#000000;"&gt;￥&lt;/span&gt;ファイル名 &lt;/span&gt; log=&lt;span style="color:#ff9900;"&gt;ファイルを置く場所&lt;/span&gt;￥&lt;span style="color:#ff9900;"&gt;作ったファイルに関するログファイル&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;これでdmpファイルという形でエクスポートされている。&lt;br /&gt;&lt;br /&gt;次にインポート&lt;br /&gt;imp &lt;span style="color:#ff9900;"&gt;ユーザ名&lt;/span&gt;/&lt;span style="color:#ff9900;"&gt;パスワード&lt;/span&gt;&lt;a href="mailto:"&gt;@&lt;/a&gt;&lt;span style="color:#ff9900;"&gt;設定しているtns &lt;/span&gt; file=&lt;span style="color:#ff9900;"&gt;dmpファイルが置いてある場所&lt;/span&gt;￥&lt;span style="color:#ff9900;"&gt;ファイル名&lt;/span&gt; log=&lt;span style="color:#ff9900;"&gt;dmpファイルが置いてある場所&lt;/span&gt;￥&lt;span style="color:#ff9900;"&gt;作ったファイルに関するログファイル&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#ff9900;"&gt;&lt;/span&gt;&lt;br /&gt;これでインポートできるはずです。&lt;br /&gt;&lt;br /&gt;どうやらバージョンが違うoracleでエクスポートするとインポートできないらしい。&lt;br /&gt;&lt;br /&gt;まぁそれ以前に同じバージョンで渡されたdmpファイルがインポートできなかったのでこれであっているかの自信がないです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-6949013078120938462?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/12/oracledmp.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-8617441827948072915</guid><pubDate>Tue, 11 Dec 2007 07:12:00 +0000</pubDate><atom:updated>2007-12-11T16:29:56.813+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>oracle</category><title>[oracle]ユーザーの追加</title><description>まずはじめにDOSプロンプトを開いて&lt;br /&gt;sqlplus &lt;a href="mailto:SCCARD/SCCARD@ORACLEDB"&gt;&lt;span style="color:#ff0000;"&gt;ユーザー名&lt;/span&gt;/&lt;span style="color:#ff0000;"&gt;パスワード&lt;/span&gt;@設定しているtns&lt;/a&gt;&lt;br /&gt;と入力しSQLPLUSを開く&lt;br /&gt;&lt;br /&gt;SQLPLUSを開いたら&lt;br /&gt;登録したいユーザー名とパスワードを入力する。&lt;br /&gt;create user '&lt;span style="color:#ff9900;"&gt;登録したい&lt;/span&gt;&lt;span style="color:#ff9900;"&gt;ユーザー名'&lt;/span&gt; identified by '&lt;span style="color:#ff9900;"&gt;登録したいパスワード&lt;/span&gt;';&lt;br /&gt;&lt;br /&gt;権限を与えるために&lt;br /&gt;create role '&lt;span style="color:#ff9900;"&gt;登録した&lt;/span&gt;&lt;span style="color:#ff9900;"&gt;ユーザー名'&lt;/span&gt;_ROLE ;&lt;br /&gt;を入力し、権限を与える内容を入力&lt;br /&gt;&lt;br /&gt;例)&lt;br /&gt;grant &lt;br /&gt;         ALTER PROFILE&lt;br /&gt;        ,ALTER SESSION&lt;br /&gt;        ,ALTER SYSTEM&lt;br /&gt;        ,ALTER TABLESPACE&lt;br /&gt;        ,ALTER USER&lt;br /&gt;        ,CREATE PROCEDURE&lt;br /&gt;        ,CREATE PROFILE&lt;br /&gt;        ,CREATE PUBLIC SYNONYM&lt;br /&gt;        ,CREATE ROLE&lt;br /&gt;        ,CREATE ROLLBACK SEGMENT&lt;br /&gt;        ,CREATE SEQUENCE&lt;br /&gt;        ,CREATE SESSION&lt;br /&gt;        ,CREATE SYNONYM&lt;br /&gt;       ,CREATE TABLE&lt;br /&gt;       ,CREATE TABLESPACE&lt;br /&gt;       ,CREATE TRIGGER&lt;br /&gt;       ,CREATE VIEW&lt;br /&gt;       ,EXECUTE ANY PROCEDURE&lt;br /&gt;       ,SELECT ANY DICTIONARY&lt;br /&gt;       ,SELECT ANY SEQUENCE&lt;br /&gt;       ,SELECT ANY TABLEto '&lt;span style="color:#ff9900;"&gt;登録したユーザー名&lt;/span&gt;&lt;span style="color:#000000;"&gt;'&lt;/span&gt;_ROLE;&lt;br /&gt;&lt;br /&gt;これらの権限を与えるため&lt;br /&gt;grant '&lt;span style="color:#ff9900;"&gt;登録したユーザー名&lt;/span&gt;'_ROLE to '&lt;span style="color:#ff9900;"&gt;登録したユーザー名&lt;/span&gt;' ;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これでユーザーの登録が完了するはず。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-8617441827948072915?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/12/oracle.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-5161366167482769151</guid><pubDate>Thu, 29 Nov 2007 08:22:00 +0000</pubDate><atom:updated>2007-11-29T17:36:45.018+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Linux</category><title>[linux]MySQLの文字コード変更方法</title><description>どうやらwebサーバとしてMySQLを使う際に文字コードを変更しなければならないらしい。&lt;br /&gt;&lt;br /&gt;それも自分で設定ファイルを作成するとのこと。&lt;br /&gt;&lt;br /&gt;#vi /etc/my.cnf&lt;br /&gt;これで新規作成する。&lt;br /&gt;&lt;br /&gt;その前に現在の設定を確認する。&lt;br /&gt;&lt;br /&gt;mysql&gt; status&lt;br /&gt;で確認できます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;mysql&gt; status;&lt;br /&gt;--------------&lt;br /&gt;./mysql Ver 14.12 Distrib 5.0.27, for pc-linux-gnu (i686) using readline 5.0&lt;br /&gt;&lt;br /&gt;Connection id: 7110&lt;br /&gt;Current database:&lt;br /&gt;Current user: root@localhost&lt;br /&gt;SSL: Not in use&lt;br /&gt;Current pager: dtdout&lt;br /&gt;Using outfile: ''&lt;br /&gt;Using delimiter: ;&lt;br /&gt;Server version: 5.0.27-Max&lt;br /&gt;Protocol version: 10&lt;br /&gt;Connection: Localhost via UNIX socket&lt;br /&gt;Server characterset: ujis&lt;br /&gt;Db characterset: ujis&lt;br /&gt;Client characterset: latin1&lt;br /&gt;Conn. characterset: latin1&lt;br /&gt;UNIX socket: /tmp/mysql.sock&lt;br /&gt;Uptime: 2 houts 1 min 14 sec&lt;br /&gt;&lt;br /&gt;ってな感じになっていると思います。&lt;br /&gt;&lt;br /&gt;必ずしも一緒ではないのでご注意。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;見てのとおりcharactersetは4種類定義されています。これらを変更するために先ほども書いた設定ファイルを作成します。下記例はEUC-jpに設定しています。&lt;br /&gt;設定する値はSHOW CHARACTER SETで確認できます。&lt;br /&gt;&lt;br /&gt;my.cnf&lt;br /&gt;&lt;br /&gt;[client]&lt;br /&gt;&lt;br /&gt;default-character-set=ujis&lt;br /&gt;&lt;br /&gt;[mysqld]&lt;br /&gt;&lt;br /&gt;port=3306&lt;br /&gt;default-character-set=ujis&lt;br /&gt;&lt;br /&gt;[mysql]&lt;br /&gt;default-character-set=ujis&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;設定がうまくいったかどうかは、statusで確認してください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-5161366167482769151?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/linuxmysql.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-8581735688508405142</guid><pubDate>Thu, 22 Nov 2007 07:15:00 +0000</pubDate><atom:updated>2007-11-22T16:22:08.530+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>[フリーウェア]</category><title>[フリーウェア]CSEでMySQL</title><description>Common SQL DeveloperというSQLのかなり優秀なフリーウェアがあるが、oracle接続とかでしか触ってなかったのでMySQLで使ってみようと試みた。&lt;br /&gt;&lt;br /&gt;どうやらCSE自体では3以降(?)はODBC接続を行わなければならないらしい。&lt;br /&gt;&lt;br /&gt;そんなわけでODBCの設定。&lt;br /&gt;&lt;br /&gt;まずはODBCのドライバインストール。&lt;br /&gt;&lt;br /&gt;ドライバのインストールだけなので完全インストールである必要はない。&lt;br /&gt;&lt;br /&gt;割と早く終わるので終わったら管理ツールにてデータソースの設定。&lt;br /&gt;&lt;br /&gt;とりあえずMySQLのODBCを選択して、データソース、ユーザー名、パスワードを入力。&lt;br /&gt;&lt;br /&gt;そのほかは空欄でいいはず。&lt;br /&gt;&lt;br /&gt;とりあえずこれで設定完了。&lt;br /&gt;&lt;br /&gt;後はいつも通りCSE開いて接続してODBC汎用選択して必要事項入力してコネクショーーーン！！&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;で接続できるはずです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ん？&lt;br /&gt;なんかいい加減？&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-8581735688508405142?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/csemysql.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-5484686895125545573</guid><pubDate>Wed, 21 Nov 2007 00:43:00 +0000</pubDate><atom:updated>2007-11-29T17:35:38.616+09:00</atom:updated><title>[Ruby]簡易掲示板</title><description>#! /usr/bin/ruby -Ks&lt;br /&gt;require "rexml/document"&lt;br /&gt;require "open-uri"&lt;br /&gt;require "kconv"&lt;br /&gt;require "cgi"&lt;br /&gt;&lt;br /&gt;cgi = CGI.new&lt;br /&gt;&lt;br /&gt;# 天気予報&lt;br /&gt;def weather&lt;br /&gt;&lt;br /&gt;title = ""&lt;br /&gt;tenki = ""&lt;br /&gt;doc = nil&lt;br /&gt;gaikyou = nil&lt;br /&gt;&lt;br /&gt;open('http://weather.livedoor.com/forecast/webservice/rest/v1?city=63&amp;amp;day=tomorrow'){f&lt;br /&gt;doc = REXML::Document.new(f)&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;doc.elements.each("lwws/title"){element&lt;br /&gt;title = element.text.tosjis&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;doc.elements.each("lwws/telop"){element&lt;br /&gt;tenki = element.text.tosjis&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;doc.elements.each("lwws/description"){element&lt;br /&gt;gaikyou = element.text.tosjis&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;puts "#{title}: #{tenki}".tosjis,"\n"&lt;br /&gt;print "\n"&lt;br /&gt;puts "#{gaikyou}".tosjis, "\n"&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;# Webページの表示&lt;br /&gt;print "Content-type: text/html\n\n"&lt;br /&gt;print &lt;&lt;eof&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;EOF&lt;br /&gt;&lt;br /&gt;# プログラム実行&lt;br /&gt;weather&lt;br /&gt;&lt;br /&gt;#ヘッダ部出力&lt;br /&gt;print &lt;&lt;eof&gt;&lt;br /&gt;&lt;br /&gt;EOF&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-5484686895125545573?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/ruby.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-7925675804064800737</guid><pubDate>Mon, 19 Nov 2007 05:39:00 +0000</pubDate><atom:updated>2007-11-21T09:43:07.574+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Linux</category><title>[Linux]Windows上からLinuxのGUIを表示させる　vnc</title><description>現在業務はWindowsで行ってますが、たまにlinuxを触りたくなるのでそのときいちいちモニタやらを入れ替えるのが面倒です。&lt;br /&gt;&lt;br /&gt;なのでwindows上でやれるvncを使います。&lt;br /&gt;&lt;br /&gt;vncサーバをlinuxに、vncクライアントをwindowsにそれぞれインストールする必要があります。&lt;br /&gt;&lt;br /&gt;linux&lt;br /&gt;「apt-get install vnc vncserver」&lt;br /&gt;&lt;br /&gt;vncを起動します。&lt;br /&gt;&lt;br /&gt;初回の起動のみパスワードを聞かれます。これは外部PCからアクセスするときに入力するモノです。&lt;br /&gt;&lt;br /&gt;「New～～～」と表示されればOKです。&lt;br /&gt;&lt;br /&gt;そのままwindowsでvncビューワを実行しても良いのですが、そのままだととても寂しい画面が表示されてしまいます。&lt;br /&gt;&lt;br /&gt;実際使うんだったらその画面のまま使いたいですよね？&lt;br /&gt;&lt;br /&gt;方法があります。&lt;br /&gt;&lt;br /&gt;viエディタを使って「/root/.vnc/xstartup」を編集します。&lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;# Uncomment the following two lines for normal desktop:&lt;br /&gt;# unset SESSION_MANAGER&lt;br /&gt;# exec /etc/X11/xinit/xinitrc&lt;br /&gt;&lt;br /&gt;[ -x /etc/vnc/xstartup ] &amp;amp;&amp;amp; exec /etc/vnc/xstartup&lt;br /&gt;[ -r $HOME/.Xresources ] &amp;amp;&amp;amp; xrdb $HOME/.Xresources&lt;br /&gt;xsetroot -solid grey&lt;br /&gt;vncconfig -iconic &amp;amp;&lt;br /&gt;xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;amp;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;#&lt;/span&gt;twm &amp;amp;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;export LANG XMODIFIERS="@im=kinput2"&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;kinput2 -canna -cannaserver localhost &amp;amp;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;exec gnome-session &amp;amp;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#cc6600;"&gt;&lt;/span&gt;&lt;br /&gt;色の部分を付け足してください。&lt;br /&gt;※「twm &amp;amp; 」をコメントにして「exec gnome-session &amp;amp;」を付け加える&lt;span style="color:#000000;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;export以下は日本語入力を可能にさせる設定です。&lt;br /&gt;&lt;br /&gt;これでwindows上でlinuxのGUIが使えるようになったともいます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-7925675804064800737?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/windowslinuxguivnc.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-7797629221242074031</guid><pubDate>Mon, 19 Nov 2007 04:44:00 +0000</pubDate><atom:updated>2007-11-21T09:42:56.708+09:00</atom:updated><title>[Linux]ファイルサーバSamba</title><description>これからはGUIをベースに書いていきます。&lt;br /&gt;&lt;br /&gt;GUIメニューよりデスクトップ→システム管理→Synaptic パッケージマネージャ&lt;br /&gt;&lt;br /&gt;「samba」を検索&lt;br /&gt;&lt;br /&gt;samba、samba-client、samba-common&lt;br /&gt;とりあえずこれらをインストール指定にしてください。&lt;br /&gt;&lt;br /&gt;全ての指定が完了したら適用してください。&lt;br /&gt;&lt;br /&gt;しばらくするとインストールが完了します。&lt;br /&gt;&lt;br /&gt;次に設定です。&lt;br /&gt;現在のままでは外部PC(windows他)ではネットワークリソースは存在はしていますが、中にはいることが出来ませんので設定します。&lt;br /&gt;&lt;br /&gt;はじめにセキュリティのためにsambaのユーザーとパスワードを設定します。&lt;br /&gt;smbpasswd -a XX　&lt;span style="color:#cc33cc;"&gt;←XXというユーザーを追加する&lt;/span&gt;&lt;br /&gt;New SMB password: &lt;span style="color:#cc33cc;"&gt;パスワードを入力する(画面に出てこないのでお間違えのないように)&lt;br /&gt;&lt;/span&gt;Added user XX.&lt;br /&gt;となれば成功です。&lt;br /&gt;&lt;br /&gt;次にviエディタで「/etc/samba/smb.conf」と入力してください。&lt;br /&gt;&lt;br /&gt;設定に必要な部分を見ます。&lt;br /&gt;&lt;br /&gt;workgroup = WORKGROUP　&lt;span style="color:#cc33cc;"&gt; ワークグループ名を指定する。&lt;/span&gt;&lt;br /&gt;netbios name = FILESERVER　&lt;span style="color:#cc33cc;"&gt;共有サーバー名&lt;/span&gt;&lt;br /&gt;hosts allow = 192.168.0. 127.　&lt;span style="color:#cc33cc;"&gt; Sambaへの接続を許可するIPアドレスを指定する。&lt;/span&gt;　&lt;span style="color:#cc33cc;"&gt;の例では　　　　&lt;br /&gt;　　　　　　　　　　　　　　　　　　　　192.168.0.と127.で始まるアドレスのみ接続できる&lt;br /&gt;&lt;/span&gt;load printers = no　 &lt;span style="color:#cc33cc;"&gt;プリンタを共有しないときはnoに変更&lt;/span&gt;&lt;br /&gt;security = share　 &lt;span style="color:#cc33cc;"&gt;ユーザー名とパスワードを使ってアクセス制御する。&lt;/span&gt;&lt;br /&gt;encrypt passwords = yes　 &lt;span style="color:#cc33cc;"&gt;暗号化したパスワードを使うか。　現在のWindowsはすべて暗号化&lt;br /&gt;パスワードに対応している。&lt;br /&gt;&lt;/span&gt;unix password sync = yes　 &lt;span style="color:#cc33cc;"&gt;SambaとLinuxのパスワードを同期させるか。　&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これで基本設定は完了します。&lt;br /&gt;&lt;br /&gt;共有フォルダを設定したい場合、下に進むにつれて[public]と書いてある場所があります。&lt;br /&gt;[public&lt;span style="color:#cc33cc;"&gt;&lt;span style="color:#000000;"&gt;]&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;comment = public Space for Everyone&lt;br /&gt;path = /var/samba/public&lt;br /&gt;writable = yes&lt;br /&gt;&lt;br /&gt;これをLAN内全て使用できる状態にするには下記のように追加すればよいと思います。&lt;br /&gt;(←から先はコマンドの説明です)&lt;br /&gt;[server] &lt;span style="color:#cc33cc;"&gt;←共有名&lt;br /&gt;&lt;/span&gt;comment = public Space for Everyone&lt;span style="color:#cc33cc;"&gt;←コメント&lt;/span&gt;&lt;br /&gt;path = /var/samba/public&lt;span style="color:#cc33cc;"&gt;←共有したいディレクトリのパス&lt;/span&gt;&lt;br /&gt;writable = yes&lt;span style="color:#cc33cc;"&gt;←書き込み許可&lt;/span&gt;&lt;br /&gt;read only = no&lt;span style="color:#cc33cc;"&gt;←読み込み専用&lt;/span&gt;&lt;br /&gt;guest ok = yes&lt;span style="color:#cc33cc;"&gt;←ユーザー以外の使用&lt;/span&gt;&lt;br /&gt;public = yes&lt;span style="color:#cc33cc;"&gt;←パスワードなしでのアクセスを許可。アクセス制限を「share」に設定する必要あり&lt;/span&gt;&lt;br /&gt;browseable = yes&lt;span style="color:#cc33cc;"&gt;←共有フォルダの一覧に表示させるようにする。noなら隠しになる&lt;/span&gt;&lt;br /&gt;create mask = 0777&lt;span style="color:#cc33cc;"&gt;←共有ファイルに作成されるファイルパーミッションを設定&lt;/span&gt;&lt;br /&gt;create masl = 0777&lt;span style="color:#cc33cc;"&gt;←共有フォルダに作成されるファイルパーミッションを設定&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;これを上書き保存してviエディタを終了してください。&lt;br /&gt;&lt;br /&gt;最後にsambaを再起動してください。&lt;br /&gt;&lt;br /&gt;/etc/rc.d/init.d/smb restart&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;システムが起動したときに自動起動の設定をします。&lt;br /&gt;chkconfig smb onと入力してください&lt;br /&gt;chkconfig --listと入力すると自動起動の確認が出来ます。&lt;br /&gt;&lt;br /&gt;「smb 3:on4:0n5:0n」&lt;br /&gt;となっているのを確認してください。&lt;br /&gt;&lt;br /&gt;確認方法は、実際に共有のパスをアドレスに入力してください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-7797629221242074031?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/samba.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-7445122835835130078</guid><pubDate>Mon, 19 Nov 2007 02:49:00 +0000</pubDate><atom:updated>2007-11-21T09:42:30.860+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Linux</category><title>[Linux]Webサーバ「Apache」のインストールと設定</title><description>OSのインストールをする際に完全インストールまたはインターネットサーバを選択しておけばインストールされています。&lt;br /&gt;&lt;br /&gt;現在インストールされているのはApache2ですが、業務で使っているのがApache1.3なのでまずはダウングレードします。&lt;br /&gt;&lt;br /&gt;「apt-get remove apache2」で削除し「apt-get install apache」でインストールします。&lt;br /&gt;&lt;br /&gt;Apacheを起動してインストールされているかを確認します。&lt;br /&gt;&lt;br /&gt;起動のコマンドは「/etc/rc.d/init.d/httpd start」&lt;br /&gt;&lt;br /&gt;ちなみに「/etc/rc.d/init.d」コマンドはアプリの起動や停止、再起動などでよく使うので覚えておいて損はしません。&lt;br /&gt;&lt;br /&gt;確認方法は、webブラウザを起動して「&lt;a href="http://localhost/"&gt;http://localhost/&lt;/a&gt;(またはIPアドレス)」を入力し実行すると、テストページなるモノが表示されるはずです。&lt;br /&gt;&lt;br /&gt;表示されなかった場合は何らかの失敗があるか、設定が必要だと思います。&lt;br /&gt;&lt;br /&gt;次に設定について。&lt;br /&gt;&lt;br /&gt;コマンド入力に「vi /etc/httpd/conf/httpd.conf」と入力してください。&lt;br /&gt;&lt;br /&gt;ちなみに「vi」とはviエディタのことです。&lt;br /&gt;&lt;br /&gt;viエディタでhttpd.confというファイルを編集するという意味です。&lt;br /&gt;&lt;br /&gt;開くとものすごい量のテキストが表示されます。&lt;br /&gt;&lt;br /&gt;編集したい場所をスクロールで探すのも結構苦労します。&lt;br /&gt;&lt;br /&gt;そのときに検索しますよね？&lt;br /&gt;&lt;br /&gt;windowsの検索とやり方が違うので注意してください。&lt;br /&gt;&lt;br /&gt;viエディタは入力モードとコマンドモードというモノがあります。&lt;br /&gt;&lt;br /&gt;入力モードはテキスト入力、コマンドモードはviエディタのコマンド入力で切り替え方は、入力モードのトキは「a」キー入力、コマンドモードは「etc」キー入力で切り替えます。&lt;br /&gt;&lt;br /&gt;さて問題の検索方法ですが、コマンドモードに切り替え「/」の後に探したい文字列を入力してください。&lt;br /&gt;例)サーバの名称の設定を探すとき「/ServerName」&lt;br /&gt;&lt;br /&gt;すると検索文字列を探します。&lt;br /&gt;&lt;br /&gt;もし選択された文字列が編集したい場所と違うときは「n」キーを入力してください。&lt;br /&gt;&lt;br /&gt;すると次を検索します。&lt;br /&gt;&lt;br /&gt;さてこれで一通りapacheの設定をしようと思います。&lt;br /&gt;&lt;br /&gt;CGIを使えるようにする&lt;br /&gt;&lt;br /&gt;どうやらApacheの標準設定ではCGIが使えないみたいです。&lt;br /&gt;なので設定の変更をします。&lt;br /&gt;&lt;br /&gt;まずCGIを使うにはperlが必要らしいのでperlのインストールを行います。&lt;br /&gt;&lt;br /&gt;「apt-get install perl」&lt;br /&gt;&lt;br /&gt;もしインストールされていた場合、されているとメッセージが出るので確認のためにやってみるのもいいと思います。&lt;br /&gt;&lt;br /&gt;CGIの実行を許可するには、&lt;br /&gt;「#AddHandler cgi-script .cgi」の「#」を外してください。&lt;br /&gt;※「#」はコメントです。&lt;br /&gt;&lt;br /&gt;これで設定は終わりです。&lt;br /&gt;&lt;br /&gt;他にもいろいろと設定がありますが、詳しくはここを見ておけば大丈夫だと思います。&lt;br /&gt;&lt;a href="http://vine.1-max.net/apache.html"&gt;http://vine.1-max.net/apache.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;最後に保存と終了方法ですが、viエディタのコマンドモードで「:w」と入力してください。&lt;br /&gt;その後「:q」と入力してください。&lt;br /&gt;&lt;br /&gt;「:w」は上書き保存「:q」は終了です。&lt;br /&gt;モノ2つの動作をまとめて行いたいときは「:wq」と入力してください。&lt;br /&gt;&lt;br /&gt;パーミッションの変更&lt;br /&gt;&lt;br /&gt;設定がOKでも外部で見ることが出来ないなら意味がありませんよね。&lt;br /&gt;そこでフォルダの読み出しの許可を設定します。&lt;br /&gt;&lt;br /&gt;「chmod 755 home/httpd/cg-bin」と入力してください。&lt;br /&gt;&lt;br /&gt;もしならなかったのであれば、GUIで見た方がいいでしょう。&lt;br /&gt;&lt;br /&gt;「コンピュータ→ファイルシステム→home→httpd」と入っていくと「cgi-bin」フォルダが見つかると思います。&lt;br /&gt;&lt;br /&gt;それを右クリックしプロパティを選択してください。&lt;br /&gt;&lt;br /&gt;アクセス権タブの読み込みと実行の全てのチェックをしてください。&lt;br /&gt;&lt;br /&gt;数値形式が「1600755」になればOKです。&lt;br /&gt;&lt;br /&gt;これでパーミッションの設定も完了しました。&lt;br /&gt;&lt;br /&gt;Apacheを再実行して、cgi-binフォルダに適当なcgiファイルをおいて、検証してみてください。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;最後に自動起動の設定をします。&lt;br /&gt;&lt;br /&gt;chkconfig httpd onと入力してください。&lt;br /&gt;&lt;br /&gt;chkconfig --listと入力し、&lt;br /&gt;&lt;br /&gt;「httpd 　　3:on4:on5:on」&lt;br /&gt;&lt;br /&gt;となっているのを確認してください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-7445122835835130078?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/webapache.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-4917107082765005898</guid><pubDate>Mon, 19 Nov 2007 02:19:00 +0000</pubDate><atom:updated>2007-11-21T09:42:17.771+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Linux</category><title>[Linux]apt-getコマンド</title><description>とりあえずインストール済みという仮定のもと書きますね。&lt;br /&gt;&lt;br /&gt;使用するOSは「Vine Linux4.1」ですが、コマンドの場合特に代わりはないので気にせず始めましょう。&lt;br /&gt;&lt;br /&gt;ルートでログインしてください。&lt;br /&gt;&lt;br /&gt;まずはアップグレード「apt-get upgrade」&lt;br /&gt;&lt;br /&gt;メニューにある「GNOME端末」というコマンドライン端末を使用します。&lt;br /&gt;&lt;br /&gt;※もしここで「root」以外でログインしている場合は「su -」と入力してください。&lt;br /&gt;その後パスワードの入力を求められるので「root」のパスワードを入力してください。&lt;br /&gt;&lt;br /&gt;「apt-get update」と入力して、最新のアップデート情報を取得してください。&lt;br /&gt;&lt;br /&gt;※最新のアップデート情報が存在する場合「apt-get upgrade」を入力してください。&lt;br /&gt;&lt;br /&gt;今回はOS全体のアップグレードを行うので「apt-get dist-upgrade」を入力してください。&lt;br /&gt;&lt;br /&gt;時間はかかりますが、これでアップグレードの完了です。&lt;br /&gt;&lt;br /&gt;もしネットにつながらないなどの場合はネットワークの設定を見直してください。&lt;br /&gt;&lt;br /&gt;パッケージのインストール「apt-get install パッケージ名」&lt;br /&gt;パッケージ=アプリケーションと思ってください。&lt;br /&gt;&lt;br /&gt;apacheをインストールしたいなら「apt-get install apache」の用に入力すれば、インストールされます。&lt;br /&gt;&lt;br /&gt;MySQLやこの後紹介するSambaのインストールを行う場合、複数インストールを行います。&lt;br /&gt;&lt;br /&gt;その際いちいち一つずつインストールするのでは手間がかかりますよね？&lt;br /&gt;&lt;br /&gt;その手間を省くには、「apt-get install」の後に、パッケージを空白置きに書いていってください。&lt;br /&gt;例)「apt-get install MySQL-server MySQL-Max Mysql-client」&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;パッケージ削除「apt-get remove パッケージ名」&lt;br /&gt;&lt;br /&gt;インストールがあるなら当然アンインストールもあります。&lt;br /&gt;&lt;br /&gt;書き方はインストールと代わりありません。&lt;br /&gt;&lt;br /&gt;「install」を「remove」に変えるだけです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;とりあえず必要なところはこれくらいですかね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-4917107082765005898?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/apt-get.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-640158274551430813</guid><pubDate>Sat, 17 Nov 2007 05:46:00 +0000</pubDate><atom:updated>2007-11-17T14:56:48.942+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>雑談</category><title>まとめ</title><description>とりあえず今まで自分で作ったり、業務で覚えたことをまとめてみました。&lt;br /&gt;&lt;br /&gt;入社して勉強してきた過程でこれらのことが自分で出来るようになれてホントよかったです。&lt;br /&gt;&lt;br /&gt;まぁまだまだですけどね。&lt;br /&gt;&lt;br /&gt;ゲームプログラミングで大体C言語を覚えて、それから入社していろんな言語を覚えてきたけど&lt;br /&gt;&lt;br /&gt;、やっぱし基本をしっかり身につけないと危険ですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;さてはじめははてなブログで書いてました。&lt;br /&gt;&lt;br /&gt;ソースコードが色付けで表示されるというところはよかったんだけれどあまりにも使いにくかったのであけました。&lt;br /&gt;&lt;br /&gt;現在過去含め合計10個くらい(移転とか内容別に書いたりとかで)ブログを書いてきましたが、アレは初めてですね。&lt;br /&gt;&lt;br /&gt;慣れるしかないのね。&lt;br /&gt;&lt;br /&gt;さて今の業務が終わったら、社内サイトシステムを2人でがんばって作り上げていく予定です。&lt;br /&gt;&lt;br /&gt;Ruby覚えたりLinux覚えたりとまたタイヘンですけど、まぁ興味があれば何でもやるのでなるようになるでしょう。&lt;br /&gt;&lt;br /&gt;次回はLinuxのことでも書いて行こうと思います。&lt;br /&gt;&lt;br /&gt;今現在中でLinux扱える人俺しかいないみたいなんで(本当かなぁ？)、いなくなってもいいようにかけること書いていきますね。&lt;br /&gt;&lt;br /&gt;いとふゆ&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-640158274551430813?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/blog-post_1830.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-3620741450517234585</guid><pubDate>Sat, 17 Nov 2007 05:41:00 +0000</pubDate><atom:updated>2007-11-19T11:49:29.471+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>C#</category><title>[C#]時間数値化、数値時間化、月末日付をまとめたC#用クラス</title><description>public class Common&lt;br /&gt;{&lt;br /&gt;CSScript cs = new CSScript();&lt;br /&gt;&lt;br /&gt;//*** strTimeに入っている値を数値(分)に変換して返します。 ***&lt;br /&gt;// strTime : 計算対象の時間。必ずhh:mm形式で入力するようにしてください。&lt;br /&gt;// 変換できないときは0を返します。&lt;br /&gt;public int 時間_数値化(string strTime)&lt;br /&gt;{&lt;br /&gt;　　int wkHour;&lt;br /&gt;　　int wkMinute;&lt;br /&gt;　　if( strTime == null)&lt;br /&gt;　　{&lt;br /&gt;　　 return 0;&lt;br /&gt;　　}&lt;br /&gt;　　//時間を取得&lt;br /&gt;　　wkHour = (int)CSScript.Val(CSScript.Left(strTime, strTime.IndexOf(":", 1) - 1));&lt;br /&gt;　　wkMinute = (int)CSScript.Val(CSScript.Right(strTime, 2));&lt;br /&gt;　　try{&lt;br /&gt;　　 return wkHour * 60 + wkMinute;&lt;br /&gt;　　}catch(Exception){&lt;br /&gt;　　 return 0;&lt;br /&gt;　　}&lt;br /&gt;}&lt;br /&gt;//*** ↑の処理で数値化された時間を元に戻します。変換失敗時は空文字列を返します ***&lt;br /&gt;public string 数値_時間化(int lngTime)&lt;br /&gt;{&lt;br /&gt;　　if(lngTime == 0)&lt;br /&gt;　　{&lt;br /&gt;　　 return "";&lt;br /&gt;　　}&lt;br /&gt;　　try&lt;br /&gt;　　{&lt;br /&gt;　　 return CSScript.Fix(lngTime / 60, 0) + ":" + string.Format( "00", lngTime % 60);&lt;br /&gt;　　}catch(Exception){&lt;br /&gt;　　 return "";&lt;br /&gt;　　}&lt;br /&gt;}&lt;br /&gt;//*** 月末日付を取得します ***&lt;br /&gt;// 変換できなかった場合は0を返します。&lt;br /&gt;public int 月末日付(string strMonth)&lt;br /&gt;{&lt;br /&gt;　　DateTime dt =DateTime.Now;&lt;br /&gt;　　return DateTime.DaysInMonth(dt.Year, (int)CSScript.Val(strMonth));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;VBで作ったのをC#にする際に、勢いのままクラスも直していたのでついでなので乗せておきます。&lt;br /&gt;&lt;br /&gt;ってかなんかインデントがおかしい&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-3620741450517234585?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/c_17.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-1930097014057308574</guid><pubDate>Sat, 17 Nov 2007 05:34:00 +0000</pubDate><atom:updated>2007-11-19T11:10:45.957+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>C#</category><title>[C#]文字列操作関係クラス</title><description>public class CSScript&lt;br /&gt;{&lt;br /&gt;　　#region "IsNull"&lt;br /&gt;　　//空白判定(戻り値：True=空白, False=空白では無い)&lt;br /&gt;　　public bool IsNull(string text)&lt;br /&gt;　　{&lt;br /&gt;　　　　//空文字判定&lt;br /&gt;　　　　if( text == null)&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return true;&lt;br /&gt;　　　　}&lt;br /&gt;　　　　//""文字判定&lt;br /&gt;　　　　if( text == "")&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return true;&lt;br /&gt;　　　　}&lt;br /&gt;　　　　return false;&lt;br /&gt;　　}&lt;br /&gt;　　#endregion&lt;br /&gt;&lt;br /&gt;　　#region"NZf"&lt;br /&gt;　　//空文字を変換&lt;br /&gt;　　public int NZf(string a)&lt;br /&gt;　　{&lt;br /&gt;　　　　if(IsNull(a) == true )&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return 00;&lt;br /&gt;　　　　}&lt;br /&gt;　　　　else&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return (int)Val(a);&lt;br /&gt;　　　　}&lt;br /&gt;　　}&lt;br /&gt;　　#endregion&lt;br /&gt;&lt;br /&gt;　　#region　Left メソッド&lt;br /&gt;　　/// -----------------------------------------------------------------------------------&lt;br /&gt;　　/// &lt;summary&gt;&lt;br /&gt;　　/// 文字列の左端から指定された文字数分の文字列を返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="stTarget"&gt;&lt;br /&gt;　　/// 取り出す元になる文字列。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iLength"&gt;&lt;br /&gt;　　/// 取り出す文字数。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 左端から指定された文字数分の文字列。&lt;br /&gt;　　/// 文字数を超えた場合は、文字列全体が返されます。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------------&lt;br /&gt;　　public static string Left(string stTarget, int iLength)&lt;br /&gt;　　{&lt;br /&gt;　　　　if (iLength &lt;= stTarget.Length) 　　　　{ 　　　　　　return stTarget.Substring(0, iLength); 　　　　} 　　　　return stTarget; 　　} 　　#endregion 　　#region　Mid メソッド (+1) 　　/// ----------------------------------------------------------------------------------- 　　/// &lt;summary&gt;&lt;br /&gt;　　/// 文字列の指定された位置以降のすべての文字列を返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="stTarget"&gt;&lt;br /&gt;　　/// 取り出す元になる文字列。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iStart"&gt;&lt;br /&gt;　　/// 取り出しを開始する位置。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 指定された位置以降のすべての文字列。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------------&lt;br /&gt;　　public static string Mid(string stTarget, int iStart)&lt;br /&gt;　　{&lt;br /&gt;　　　　if (iStart &lt;= stTarget.Length) 　　　　{ 　　　　　　return stTarget.Substring(iStart - 1); 　　　　} 　　　　return string.Empty; 　　} 　　/// ----------------------------------------------------------------------------------- 　　/// &lt;summary&gt;&lt;br /&gt;　　/// 文字列の指定された位置から、指定された文字数分の文字列を返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="stTarget"&gt;&lt;br /&gt;　　/// 取り出す元になる文字列。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iStart"&gt;&lt;br /&gt;　　/// 取り出しを開始する位置。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iLength"&gt;&lt;br /&gt;　　/// 取り出す文字数。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 指定された位置から指定された文字数分の文字列。&lt;br /&gt;　　/// 文字数を超えた場合は、指定された位置からすべての文字列が返されます。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------------&lt;br /&gt;　　public static string Mid(string stTarget, int iStart, int iLength)&lt;br /&gt;　　{&lt;br /&gt;　　　　if (iStart &lt;= stTarget.Length) 　　　　{ 　　　　　　if (iStart + iLength - 1 &lt;= stTarget.Length) 　　　　　　{ 　　　　　　　　return stTarget.Substring(iStart - 1, iLength); 　　　　　　} 　　　　　　return stTarget.Substring(iStart - 1); 　　　　} 　　　　return string.Empty; 　　} 　　#endregion 　　#region　Right メソッド (+1) 　　/// ----------------------------------------------------------------------------------- 　　/// &lt;summary&gt;&lt;br /&gt;　　/// 文字列の右端から指定された文字数分の文字列を返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="stTarget"&gt;&lt;br /&gt;　　/// 取り出す元になる文字列。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iLength"&gt;&lt;br /&gt;　　/// 取り出す文字数。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 右端から指定された文字数分の文字列。&lt;br /&gt;　　/// 文字数を超えた場合は、文字列全体が返されます。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------------&lt;br /&gt;　　public static string Right(string stTarget, int iLength)&lt;br /&gt;　　{&lt;br /&gt;　　　　if (iLength &lt;= stTarget.Length) 　　　　{ 　　　　　　return stTarget.Substring(stTarget.Length - iLength); 　　　　} 　　　　return stTarget; 　　} 　　#endregion 　　#region　Val メソッド (+2) 　　/// ----------------------------------------------------------------------------- 　　/// &lt;summary&gt;&lt;br /&gt;　　/// 指定した文字列に含まれる数値を変換して返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="stTarget"&gt;&lt;br /&gt;　　/// 任意の有効な文字列。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 指定した文字列に含まれる数値。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------&lt;br /&gt;　　public static double Val(string stTarget)&lt;br /&gt;　　{&lt;br /&gt;　　　　// Null 値の場合は 0 を返す&lt;br /&gt;　　　　if (stTarget == null)&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return 0;&lt;br /&gt;　　　　}&lt;br /&gt;&lt;br /&gt;　　　　int iCurrent = 0;&lt;br /&gt;　　　　int iLength = stTarget.Length;&lt;br /&gt;&lt;br /&gt;　　　　// 評価対象外の文字をスキップする&lt;br /&gt;　　　　for (iCurrent = 0; iCurrent &lt; chone =" stTarget[iCurrent];"&gt;= iLength)&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return 0;&lt;br /&gt;　　　　}&lt;br /&gt;&lt;br /&gt;　　　　bool bMinus = false;&lt;br /&gt;&lt;br /&gt;　　　　// 先頭にある符号を判定する&lt;br /&gt;　　　　switch (stTarget[iCurrent])&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　case '-':&lt;br /&gt;　　　　　　　　bMinus = true;&lt;br /&gt;　　　　　　　　iCurrent++;&lt;br /&gt;　　　　　　　　break;&lt;br /&gt;　　　　　　case '+':&lt;br /&gt;　　　　　　　　iCurrent++;&lt;br /&gt;　　　　　　　　break;&lt;br /&gt;　　　　}&lt;br /&gt;&lt;br /&gt;　　　　int iValidLength = 0;&lt;br /&gt;　　　　int iPriod = 0;&lt;br /&gt;&lt;br /&gt;　　　　double dReturn = 0D;&lt;br /&gt;&lt;br /&gt;　　　　bool bDecimal = false;&lt;br /&gt;　　　　bool bShisuMark = false;&lt;br /&gt;&lt;br /&gt;　　　　// 1 文字ずつ有効な文字かどうか判定する&lt;br /&gt;　　　　while (iCurrent &lt; chcurrent =" stTarget[iCurrent];" chcurrent ="="" chcurrent ="="" chcurrent ="="" chcurrent ="="" chcurrent ="="" chcurrent ="="" dreturn =" (dReturn"&gt;= '1') &amp;amp;&amp;amp; (chCurrent &lt;= '9')) 　　　　　　{ 　　　　　　　　iCurrent++; 　　　　　　　　iValidLength++; 　　　　　　　　dReturn = (dReturn * 10) + double.Parse(chCurrent.ToString()); 　　　　　　} 　　　　　　else if (chCurrent == '.') 　　　　　　{ 　　　　　　　　iCurrent++; 　　　　　　　　if (bDecimal) 　　　　　　　　{ 　　　　　　　　　　break; 　　　　　　　　} 　　　　　　　　bDecimal = true; 　　　　　　　　iPriod = iValidLength; 　　　　　　} 　　　　　　else if ((chCurrent == 'e')  (chCurrent == 'E')  (chCurrent == 'd')  (chCurrent == 'D')) 　　　　　　{ 　　　　　　　　bShisuMark = true; 　　　　　　　　iCurrent++; 　　　　　　　　break; 　　　　　　} 　　　　　　else 　　　　　　{ 　　　　　　　　break; 　　　　　　} 　　　　} 　　　　int iDecimal = 0; 　　　　// 小数点が判定された場合 　　　　if (bDecimal) 　　　　{ 　　　　　　iDecimal = iValidLength - iPriod; 　　　　} 　　　　// 指数が判定された場合 　　　　if (bShisuMark) 　　　　{ 　　　　　　bool bShisuValid = false; 　　　　　　bool bShisuMinus = false; 　　　　　　double dCoef = 0D; 　　　　　　// 指数を検証する 　　　　　　while (iCurrent &lt; chcurrent =" stTarget[iCurrent];" chcurrent ="="" chcurrent ="="" chcurrent ="="" chcurrent ="="" chcurrent ="=""&gt;= '0') &amp;amp;&amp;amp; (chCurrent &lt;= '9')) 　　　　　　　　{ 　　　　　　　　　　dCoef = (dCoef * 10) + double.Parse(chCurrent.ToString()); 　　　　　　　　　　iCurrent++; 　　　　　　　　} 　　　　　　　　else if (chCurrent == '+') 　　　　　　　　{ 　　　　　　　　　　iCurrent++; 　　　　　　　　} 　　　　　　　　else if ((chCurrent != '-')  bShisuValid) 　　　　　　　　{ 　　　　　　　　　　break; 　　　　　　　　} 　　　　　　　　else 　　　　　　　　{ 　　　　　　　　　　bShisuValid = true; 　　　　　　　　　　bShisuMinus = true; 　　　　　　　　　　iCurrent++; 　　　　　　　　} 　　　　　　} 　　　　　　// 指数の符号に応じて累乗する 　　　　　　if (bShisuMinus) 　　　　　　{ 　　　　　　　　dCoef += iDecimal; 　　　　　　　　dReturn *= System.Math.Pow(10, - dCoef); 　　　　　　} 　　　　　　else 　　　　　　{ 　　　　　　　　dCoef -= iDecimal; 　　　　　　　　dReturn *= System.Math.Pow(10, dCoef); 　　　　　　} 　　　　} 　　　　else if (bDecimal &amp;amp;&amp;amp; (iDecimal != 0)) 　　　　{ 　　　　　　dReturn /= System.Math.Pow(10, iDecimal); 　　　　} 　　　　// 無限大の場合は 0 を返す 　　　　if (double.IsInfinity(dReturn)) 　　　　{ 　　　　　　return 0; 　　　　} 　　　　// マイナス判定の場合はマイナスで返す 　　　　if (bMinus) 　　　　{ 　　　　　　return -dReturn; 　　　　} 　　　　return dReturn; 　　} 　　/// ----------------------------------------------------------------------------- 　　/// &lt;summary&gt;&lt;br /&gt;　　/// 指定した文字に含まれる数値を変換して返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="chTarget"&gt;&lt;br /&gt;　　/// 任意の有効な文字。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 指定した文字に含まれる数値。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------&lt;br /&gt;　　public static int Val(char chTarget)&lt;br /&gt;　　{&lt;br /&gt;　　　　return (int)Val(chTarget.ToString());&lt;br /&gt;　　}&lt;br /&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------&lt;br /&gt;　　/// &lt;summary&gt;&lt;br /&gt;　　/// 指定したオブジェクトに含まれる数値を変換して返します。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="oTarget"&gt;&lt;br /&gt;　　/// 任意の有効なオブジェクト。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// 指定したオブジェクトに含まれる数値。&lt;/returns&gt;&lt;br /&gt;　　/// -----------------------------------------------------------------------------&lt;br /&gt;　　public static double Val(object oTarget)&lt;br /&gt;　　{&lt;br /&gt;　　　　if (oTarget != null)&lt;br /&gt;　　　　{&lt;br /&gt;　　　　　　return Val(oTarget.ToString());&lt;br /&gt;　　　　}&lt;br /&gt;&lt;br /&gt;　　　　return 0D;&lt;br /&gt;　　}&lt;br /&gt;&lt;br /&gt;　　#endregion&lt;br /&gt;&lt;br /&gt;　　#region Fix&lt;br /&gt;&lt;br /&gt;　　/// ------------------------------------------------------------------------&lt;br /&gt;　　/// &lt;summary&gt;&lt;br /&gt;　　/// 指定した精度の数値に切り捨てします。&lt;/summary&gt;&lt;br /&gt;　　/// &lt;param name="dValue"&gt;&lt;br /&gt;　　/// 丸め対象の倍精度浮動小数点数。&lt;/param&gt;&lt;br /&gt;　　/// &lt;param name="iDigits"&gt;&lt;br /&gt;　　/// 戻り値の有効桁数の精度。&lt;/param&gt;&lt;br /&gt;　　/// &lt;returns&gt;&lt;br /&gt;　　/// iDigits に等しい精度の数値に切り捨てられた数値。&lt;/returns&gt;&lt;br /&gt;　　/// ------------------------------------------------------------------------&lt;br /&gt;　　public static double Fix(double dValue, int iDigits)&lt;br /&gt;　　{&lt;br /&gt;　　　　double dCoef = System.Math.Pow(10, iDigits);&lt;br /&gt;&lt;br /&gt;　　　　return dValue &gt; 0 ? System.Math.Floor (dValue * dCoef) / dCoef:&lt;br /&gt;　　　　　　System.Math.Ceiling(dValue * dCoef) / dCoef;&lt;br /&gt;　　}&lt;br /&gt;&lt;br /&gt;　　#endregion&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;C#です。はいC#ですよ。&lt;br /&gt;お前出来んのかよ！とか聞かないでください。&lt;br /&gt;VBのフォーム制御をCやJavaで書いてるって感覚だけでやってるんですから。&lt;br /&gt;さて雑談はこれくらいにしておいて。&lt;br /&gt;文字列操作です。&lt;br /&gt;VB6にある関数や、先にも書いた関数があります。&lt;br /&gt;まぁ半分コピーですけどね。&lt;br /&gt;VB6にある関数は結構便利だったりします。&lt;br /&gt;C#にあるかもしれないけど、言語が変わっても大丈夫だと思えるようにしたいのでこれを作ってみました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-1930097014057308574?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/c.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-2611954000525719542</guid><pubDate>Sat, 17 Nov 2007 05:30:00 +0000</pubDate><atom:updated>2007-11-17T14:34:37.722+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VB</category><title>[VB]月末日付取得</title><description>'*** 月末日付を取得します ***&lt;br /&gt;' 変換できなかった場合は0を返します。&lt;br /&gt;Public Function 月末日付(ByVal strMonth)&lt;br /&gt;'*** 月末日付を取得します ***&lt;br /&gt;' 変換できなかった場合は0を返します。&lt;br /&gt;Public Function 月末日付(ByVal strMonth)&lt;br /&gt;　　Dim dt As DateTime = DateTime.Now&lt;br /&gt;　　月末日付 = 0&lt;br /&gt;　　On Error Resume Next&lt;br /&gt;　　月末日付 = Date.DaysInMonth(dt.Year, strMonth)&lt;br /&gt;End Function&lt;br /&gt;&lt;br /&gt;時間数値化と同じ内容のときにあったものです。&lt;br /&gt;俺がなかったら今頃この仕事やめてます。&lt;br /&gt;ウソですｗ&lt;br /&gt;.NETと書いているけれど&lt;a class="keyword" href="http://d.hatena.ne.jp/keyword/VB"&gt;VB&lt;/a&gt;でも使えるはずです。&lt;br /&gt;元はExcelVBAなんで。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-2611954000525719542?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/blog-post_1014.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-1017621219112743322</guid><pubDate>Sat, 17 Nov 2007 05:23:00 +0000</pubDate><atom:updated>2007-11-17T14:33:51.976+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VB.NET</category><title>[VB.NET]時間を数値化、数値を時間化</title><description>Public Class Common&lt;br /&gt;　　Dim cs As New CSScript&lt;br /&gt;　　'*** strTimeに入っている値を数値(分)に変換して返します。 ***&lt;br /&gt;　　' strTime : 計算対象の時間。必ずhh:mm形式で入力するようにしてください。&lt;br /&gt;　　' 変換できないときは0を返します。&lt;br /&gt;　　Public Function 時間_数値化(ByVal strTime As Object) As Long&lt;br /&gt;　　　　Dim wkHour As Long&lt;br /&gt;　　　　Dim wkMinute As Long&lt;br /&gt;　　　　If strTime = "" Then&lt;br /&gt;　　　　　　時間_数値化 = 0&lt;br /&gt;　　　　　　Exit Function&lt;br /&gt;　　　　End If&lt;br /&gt;　　　　'時間を取得&lt;br /&gt;　　　　On Error Resume Next&lt;br /&gt;　　　　wkHour = Left(strTime, InStr(1, strTime, ":") - 1)&lt;br /&gt;　　　　wkMinute = Right(strTime, 2)&lt;br /&gt;　　　　If Err.Number = 0 Then&lt;br /&gt;　　　　　　時間_数値化 = wkHour * 60 + wkMinute&lt;br /&gt;　　　　Else&lt;br /&gt;　　　　　　時間_数値化 = 0&lt;br /&gt;　　　　End If&lt;br /&gt;　　End Function&lt;br /&gt;　　'*** ↑の処理で数値化された時間を元に戻します。変換失敗時は空文字列を返します ***&lt;br /&gt;　　Public Function 数値_時間化(ByVal lngTime) As String&lt;br /&gt;　　　　If cs.IsNull(lngTime) Then&lt;br /&gt;　　　　　　数値_時間化 = ""&lt;br /&gt;　　　　　　Exit Function&lt;br /&gt;　　　　End If&lt;br /&gt;　　　　On Error Resume Next&lt;br /&gt;　　　　数値_時間化 = Fix(lngTime / 60) &amp;amp; ":" &amp;amp; Format(lngTime Mod 60, "00")&lt;br /&gt;　　　　If Err.Number &lt;&gt; 0 Then&lt;br /&gt;　　　　　　数値_時間化 = ""&lt;br /&gt;　　　　End If&lt;br /&gt;　　End Function&lt;br /&gt;End Class&lt;br /&gt;&lt;br /&gt;前にやった業務(トラウマ)でこんなことをしていたので、使えるかもしれないからメモっておきますね。&lt;br /&gt;まぁこれの元が滅茶苦茶なExcelVBAで、VB.NETで使いたくなって少し改変したのだけれど、&lt;br /&gt;メソッド名が漢字なのはその名残だと思ってください。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-1017621219112743322?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/blog-post_4991.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-364199374715804853</guid><pubDate>Sat, 17 Nov 2007 05:15:00 +0000</pubDate><atom:updated>2007-11-17T14:32:47.517+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VB.NET</category><title>[VB.NET]空白判定と空文字変換</title><description>空白判定「IsNull」&lt;br /&gt;&lt;br /&gt;'空白判定(戻り値：True=空白, False=空白では無い)&lt;br /&gt;Public Function IsNull(ByVal text As String) As Boolean&lt;br /&gt;　　'Nothing判定&lt;br /&gt;　　If IsNothing(text) = True Then&lt;br /&gt;　　　　Return True&lt;br /&gt;　　End If&lt;br /&gt;　　'空文字判定&lt;br /&gt;　　If text Is String.Empty Then&lt;br /&gt;　　　　Return True&lt;br /&gt;　　End If&lt;br /&gt;　　'""文字判定&lt;br /&gt;　　If text.Trim = "" Then&lt;br /&gt;　　　　Return True&lt;br /&gt;　　End If&lt;br /&gt;　　Return False&lt;br /&gt;End Function&lt;br /&gt;&lt;br /&gt;空文字判定「NZf」&lt;br /&gt;&lt;br /&gt;'空文字を変換&lt;br /&gt;Public Function NZf(ByVal a As Object)&lt;br /&gt;　　If IsNull(a) Then&lt;br /&gt;　　　　NZf = "00"&lt;br /&gt;　　Else&lt;br /&gt;　　　　NZf = a&lt;br /&gt;　　End If&lt;br /&gt;End Function&lt;br /&gt;&lt;br /&gt;どんな経緯で使ったかは覚えてないけれど、あったら助かったクラスより抜粋。&lt;br /&gt;&lt;br /&gt;「NZf」は「IsNull」がないと使えないという罠は気にしてはいけないのですよ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-364199374715804853?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/blog-post_17.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-115534732697671134</guid><pubDate>Sat, 17 Nov 2007 05:10:00 +0000</pubDate><atom:updated>2007-11-17T14:13:25.920+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VB</category><title>[VB]文字列から特定の文字を抜き出し表示する</title><description>&lt;div id="#src"&gt;&lt;br /&gt;'必要な変数の宣言&lt;br /&gt;Dim strArray() As String&lt;br /&gt;Dim strTxt     As String&lt;br /&gt;&lt;br /&gt;'対象の文字列&lt;br /&gt;strTxt = "2007/11/16"&lt;br /&gt;&lt;br /&gt;'Splitを利用して対象の文字列を"/"で区切り、配列に代入する&lt;br /&gt;strArray = Split(strTxt, "/")&lt;br /&gt;&lt;br /&gt;'"/"で区切れた文字列をつなげる&lt;br /&gt;Textbox.Text = strArray(0) &amp; strArray(1) &amp; strArray(2)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;結果：&lt;br /&gt;&lt;img src="http://4.bp.blogspot.com/_Br5svMqYHWE/Rz531tk5ItI/AAAAAAAAAAs/tNP-MYdXKNE/s320/20071116154659.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5133672389900051154" /&gt;&lt;br /&gt;&lt;br /&gt;今回は"/"で区切る。&lt;br /&gt;&lt;br /&gt;区切りの数が多くなった場合どうしたらいいのかな？&lt;br /&gt;&lt;br /&gt;Forで回せば大丈夫だと思いたい｡&lt;br /&gt;&lt;br /&gt;とりあえず現在の業務終了予定｡&lt;br /&gt;&lt;br /&gt;絶対ダメ出し食らうけど､こっちもこっちで言い訳があるんでまぁ五十歩百歩だろうね｡&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-115534732697671134?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/vb.html</link><author>noreply@blogger.com (Hiro)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Br5svMqYHWE/Rz531tk5ItI/AAAAAAAAAAs/tNP-MYdXKNE/s72-c/20071116154659.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-2154145828683150055</guid><pubDate>Sat, 17 Nov 2007 04:45:00 +0000</pubDate><atom:updated>2007-11-17T14:08:05.055+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>VB</category><title>[VB]あるデータを2つのテキストボックスに分割して表示させる方法</title><description>&lt;div id="#src"&gt;&lt;br /&gt;'必要な変数を宣言&lt;br /&gt;Dim iFind As Integer&lt;br /&gt;Dim stTarget As String&lt;br /&gt;'初期化&lt;br /&gt;stTarget = "11:00"&lt;br /&gt;&lt;br /&gt;'先頭から':'を検索し、見つかった位置を取得する&lt;br /&gt;iFind = InStr(1, stTarget, ":")&lt;br /&gt;&lt;br /&gt;'先頭から↑で見つけた':'の一つ手前の位置までの文字列を取得する&lt;br /&gt;textbox1 = Mid$(stTarget, 1, iFind - 1)&lt;br /&gt;'↑で見つけた':'の一つ後ろから末尾の文字列を取得する&lt;br /&gt;textbox2 = Mid$(stTarget, iFind + 1)&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;結果：&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5133668442825106114" alt="" src="http://1.bp.blogspot.com/_Br5svMqYHWE/Rz50P9k5IsI/AAAAAAAAAAk/2UYw1EUOeLg/s320/20071115114538.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;チョッチ仕様変更と来て、DBへの登録はいいものの表示になるとどうしたらよいものかと調べたら、いい感じに検索方法を2つ見つけたので組み合わせてみたらできた。&lt;br /&gt;&lt;br /&gt;「InStr」は文字の検索方法です。&lt;br /&gt;&lt;br /&gt;今回は時間を分割表示したいなど(あるとは思わないけど)、':'の位置を取得してます。&lt;br /&gt;&lt;br /&gt;例では先頭からということで'1'を指定していますが、ここは2文字目でも4文字目でも指定可能です。&lt;br /&gt;&lt;br /&gt;「Mid$」は文字列の一部を取得する方法です。&lt;br /&gt;&lt;br /&gt;1では先頭から「InStr」で取得した':'がある位置の一つ手前までの文字列を取得しています。&lt;br /&gt;&lt;br /&gt;2では「InStr」で取得した':'がある位置の一つ後ろから末尾の文字列を取得してます。&lt;br /&gt;&lt;br /&gt;末尾なので引数省略が可能となってます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;説明って難しいね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-2154145828683150055?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/vb2.html</link><author>noreply@blogger.com (Hiro)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_Br5svMqYHWE/Rz50P9k5IsI/AAAAAAAAAAk/2UYw1EUOeLg/s72-c/20071115114538.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1714579185874286158.post-7745968328473275255</guid><pubDate>Sat, 17 Nov 2007 04:43:00 +0000</pubDate><atom:updated>2007-11-17T13:45:01.026+09:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>雑談</category><title>移転してきました。</title><description>はてなブログで作っていましたが、買い勝手が悪いのでこちらへ移転しました。&lt;br /&gt;よろしくお願いします。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1714579185874286158-7745968328473275255?l=lisolutionux.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://lisolutionux.blogspot.com/2007/11/blog-post.html</link><author>noreply@blogger.com (Hiro)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item></channel></rss>