コマンドラインでC

Visual Studio 2017 C++も入れて、C言語が使えるようになった。ところで、コマンドラインのコンパイラも使えるようになっているはずなので、やってみた。こちらも問題なく使えた。簡単なC言語の場合こちらのほうがメモリもとらなくて、ライトでいい。エディタはCrescent Eve を使っているが、こちらも黒のバックにして、昔の雰囲気を出してみた。なかなかいい感じ。

Visual C++

Visual Studio この前VBはいれていたが、C言語もやってみたくなり、追加で入れてみた。まず、インストーラを起動。

「変更」をクリック

「C++によるデスクトップ開発」にチェックを入れC言語関連を選択する。

右下の「変更」をクリックするとインストールが始まる。
インストールが終了したら、Visual Studioを起動し、ファイルメニューから「新しいプロジェクト」を選択すると、C言語のプロジェクトが作成できるようになっているはず。

簡単なテストプログラム(WIN32コンソールアプリケーション)を作成して、動作のテスト。

実行は、CTRL+F5 キーを押す。

Visual Studio 2017

Visual Studio 2017 を入れてみた。そもそもPCを新しい部品で作り直すつもりなのに、無駄になるかも!!
しかし、アプリ作成は危険が多いので、このまま古いPC上で使い続け、新PCができてもバックアップ機にまわし、アプリ作成はこちらで行うようにすることとした。
まずは、マイクロソフトのサイトからダウン。(https://www.visualstudio.com/ja/downloads/)

インストーラをダウンして、あとはどの機能を入れるか細かく設定できダウンの時間などを短くすることができるようになった。あとで必要になったら、追加でダウン、インストールできる。

Visual Studio 2013

この前から、デジタル時計をいじっているのだが、やはり開発環境は新しいものも試してみたくなった。2010ではやってみたが、もっと新しい2013でも試してみた。

まずはMicroSoftのVisual Studioのサイトからダウン。

Visual Studioには色々な種類があるが、今回もExpressにした。
また、Windows8の登場により、ストアアプリも開発できるようになった。今回は通常のデスクトップの開発をしたいので、デスクトップ版を選ぶ。

Webからのオンラインでのインストールと、ISOイメージファイルのダウンと2種類が選べるが、あとあと残しておきたいので、ISOイメージファイルのダウンとした。

ダウンがすんだら、早速DVDに焼く。しかし、大きさが結構大きい。通常のDVDにははいらず、ダブルレイヤーのDVDを買ってくるはめになった。

焼けたら、早速インストーラを起動。インストーラーもなんだかシンプルになった。ライセンス条項...にチェックを入れないと、インストールボタンが表示されないので注意。

すると、インストールが始まる。今回Update4も適用されるので、結構時間がかかる。

インストールが終わると、起動ボタンがでる。早速クリック。

すると、Visual Studioにサインインするよう表示される。IDを取っている場合はサインインしておく。後回しにもできる。

サインインはMicrosoftのアカウントで行う。

最近は、クラウド環境でも開発できる。まあ、今回はそれほど高度な使い方はしないと思うので、パスしておく。

いよいよ、Visual Studio2013が起動。

さっそく、この前からやっているデジタルクロックを読み込んでみる。変換する旨表示が出る。

まあ、簡単なコードなので、特に問題もなく変換された。

やはり、バックグランドは青色になってしまった。これは設定し直せば問題はないだろう。

コードも問題なくコンパイルできた。

VisualStudio2010

この前作ってみたデジタル時計、VisualStudio2008で作っていたが、やはり古いので、他のマシンのVisualStudio2010で変換してみた。変換と行っても、2008のプロジェクトを読み込むと自動的に変換してくれる。デジタル時計は簡単なので、なんの問題もなく変換出来た。ただ1点、時計のバックグラウンドが黒にしていたのが、暗い青に変わってしまった。まあ、こちらもいいかなとそのままにしておいた。その他起動時の表示位置を若干下げた。

そこで出来たデジタル時計をWindows8.1へもっていったら、ちゃんとバックグラウンドカラ-は黒で表示された。どういうことかな。ようわからん。

VBでデジタル時計

以前、VBで簡単なデジタル時計を作っていたが、色々使い勝手がいまいちなところが出てきてたので、簡単に改善できるところを色々いじって見た。
VBは2008!!、結構古いがまあこれで問題なく動くので。
まずはフォームの作り直し。

起動時左上はじに出るようにした。

以前のやつは、文字色を青色にしていたが、どうも見にくいので、白にした。バックカラーは黒。

その他、年月日と曜日を表示できるように、ラベルを2つ追加した。

タイマーの設定はこんな感じ。

タイマーの割り込みの所に、コードを書く。

テストラン

作るのはWindows7上のVisualBasic2008で作ったが、Windows8.1上でも、問題なく動く。対応する.netが入っていないと、最初の実行時にインストールするか聞かれるので、インストールすると、次回から問題なく動く。この位簡単だと、なんの問題も生じないようだ。

テキストファイルの読み書き

Readボタンを押すと、テキストファイルを読んでListBoxに表示します。また、ピクチャボックスにも表示します。
Writeボタンを押すと、ListBoxの内容を、テキストファイルへ出力します。

フォーム1

Public Class Form1

ボタン1


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

’ファイルIO用の変数等の宣言

Dim fname As String
Dim ret As DialogResult
Dim TextFile As IO.StreamReader
Dim Line As String
Dim cnt As Integer

’PictureBox1のGraphicsオブジェクトを取得

Dim g As Graphics = PictureBox1.CreateGraphics()
Dim ystr As Integer

‘ダイアログボックスの初期設定

With Me.OpenFileDialog1
 .Title = “ファイルを開く”
 .CheckFileExists = True
  .RestoreDirectory = True
 .Filter = “テキストファイル|.txt;.dat”
 .FileName = “test.txt”
End With

‘ダイアログボックスの表示

ret = Me.OpenFileDialog1.ShowDialog()
If ret = Windows.Forms.DialogResult.OK Then
 fname = Me.OpenFileDialog1.FileName
Else
 fname = “”
End If
If IO.File.Exists(fname) = False Then
 MessageBox.Show(“ファイルが見つかりません。”, “通知”)
 Exit Sub
End If

‘フォントオブジェクトの作成

Dim fnt As New Font(“MS UI Gothic”, 12)
Me.ListBox1.Items.Clear()
TextFile = New IO.StreamReader(fname, System.Text.Encoding.Default)

cnt = 0
Do While True
 Line = TextFile.ReadLine()
 If Line = Nothing Then
  Exit Do
 End If
 Me.ListBox1.Items.Add(Line)
 cnt = cnt + 1

‘文字列を位置(0,0)、青色で表示

 g.DrawString(Line, fnt, Brushes.Blue, 0, ystr)
 ystr = ystr + 20
Loop
TextFile.Close()

‘リソースを開放する

fnt.Dispose()
g.Dispose()
Label2.Text = cnt.ToString


End Sub

ボタン2

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Dim ret As DialogResult
Dim textfile As IO.StreamWriter
Dim i As Integer
Dim cnt As Integer

 cnt = Integer.Parse(Label2.Text)

‘ダイアログボックスの初期設定

With Me.SaveFileDialog1
 .RestoreDirectory = True
  .OverwritePrompt = True
 .Filter = “すべてのファイル(.)|.|” & “テキストファイル(.txt)|.txt”
 .FileName = “ts.txt”
End With

‘ダイアログボックスの表示

ret = Me.SaveFileDialog1.ShowDialog
If ret = Windows.Forms.DialogResult.OK Then
 Me.Label1.Text =   Me.SaveFileDialog1.FileName

‘現在のファイルのエンコーディングで出力

‘textfile = New IO.StreamWriter(Me.Label1.Text, False, System.Text.Encoding.Default)

‘エンコーディングをShift-JISに指定する

textfile = New IO.StreamWriter(Me.Label1.Text, False, System.Text.Encoding.GetEncoding(\”Shift-JIS\”))

For i = 1 To ListBox1.Items.Count
 ‘Me.ListBox1.s = i – 1
 textfile.WriteLine(Me.ListBox1.Items(i – 1))
Next

textfile.Close()

End If

End Sub

End Class