アフィリエイト広告を利用しています

広告

posted by fanblog

2015年12月13日

久しぶりのc++で初exeファイル作成

64ビットアセンブラを勉強し始める。

まずはVisual Studio Express 2015 for Windows Desktop
をダウンロードする。
>Visual Studio Express
https://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx

どうやらこの「64ビットアセンブラ入門」は
c++のコードから関数としてアセンブリ言語のコードを呼び出すようだ。



だからc++を少し使う。

大学院時代以来だ。

とりあえずサンプルプログラムを実行。
ctrl F5で「デバッグなしで開始」

、、、あれ?
なんかショートカットが使えない。
スタートアップの「WebとWindowsを検索」が最前面に表示された。
surface proのキーボード仕様のせいか。
F5のキーに検索の虫眼鏡マークが書かれている、、

しかたなくマウスで「デバッグなしで開始」をクリック。

c++サンプル.JPG

おー、、、、しょぼ。さすがサンプル。
ただ確かにアセンブルで書いたコード(たった1行だけど)が
実行されている。(詳しくは本を買って読んで参照ください)

複数のプログラミング言語(c++とアセンブリ言語)で1つのプログラムができるのが面白い。
まあ、でも結局0と1のマシン語に置き換えられるんだから納得だ。

このまま読んでいくのも面白そうだが、
少し脱線してみたくなった。

exeファイルはどう作るのだろう、、、
→ビルドっするとDebugフォルダにできるらしい。
→Debugフォルダにexeファイル含む3つのファイルができていた。

exeファイルをクリック→コマンドプロンプトらしきものが一瞬見えたが
何も起きない。
ようするに変数に1を代入しただけのプログラムだから
コマンドプロンプトが一瞬動いて閉じて終了したということか?
ちゃんと動いているか分からない。

よし
テキストファイルを出力させてみよう。
検索。下記のホームページを発見。
>テキストファイルの読み書き
http://homepage3.nifty.com/mmgames/c_guide/17-01.html

そのままペーストして実行。

え、エラー。なんで?

また検索。下記のサイトを発見!
>kenpi20の灰色マインドマップ日記
http://kenpi20.hatenablog.com/entry/2014/11/01/235634

どうやらfopenというコマンドが使えないらしい。
最近の開発環境でビルドすると。
セキュリティ強化の関係らしい。
fopen_sというコマンドを使うらしい。

同ページにある下記のリンクより書き換え方法がわかった。
>fopen_sとかsscanf_sとかの"_s"関数書き換え例まとめ
http://blog.livedoor.jp/mrcom511/archives/51270788.html

sampleフォルダにテキストファイル「test1.txt」が吐き出された。
中を見るとアセンブリ言語で1行書いたコードのa=1の「1」が
ちゃんと書き込まれていた。(当たり前だけど)

アセンブリ言語コード部分をaに100を代入するよう書き換えると
テキストファイルも100に変わっていた。

ビルドしてDebugフォルダにできたexeファイルを実行すると
隣にさっきと同じ「test1.txt」が吐き出された。
ファイルを開くとやっぱり中に100の数字があった。

初exe作成.JPG

初exe作成2.JPG

大学のときはレポート書くための演算でc++をかじっていただけで
exeファイルを作ったことはなかった。
先日nasmでアセンブルしてexeファイルを生まれて初めて作ったが、
今回久しぶりのc++で初めて作ったexeファイルはもっと感動。
あたりまえでほんとにしょぼい内容だけど、、

自分の生活を便利にするexeファイルをたくさん作りたいなあ

posted by iyoder at 02:31 | Comment(0) | TrackBack(0) | プログラム
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/4514669
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
最新記事
<< 2021年01月 >>
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
カテゴリーアーカイブ
ファン
プロフィール
最新コメント
×

この広告は30日以上新しい記事の更新がないブログに表示されております。