タグ

c++とwindowsに関するneumannのブックマーク (19)

  • Windows 8のC++でプログラミングの常識がひっくり返った

    「C言語とC++がわかる」というムック(2013年4月2日発売)の作業で、Windows 8/RTで動く「Windowsストア アプリ」をC++で作った。元記事はVisual BasicとC#(シーシャープ)で作っていたので、それをC++で書き直すというわけだ。 これが想像をはるかに超えて難しく、土日に働き続けるのはもちろんのこと、1日の睡眠時間を2時間に削ったりして長時間取り組んでも、思うように進まなかった。印刷会社にデータを渡す日は近付くしプログラムは動かないしで、10年に1度クラスの大ピンチ。冷や汗をかき、涙目になりながら書き続けて何とか間に合わせたのだが、どこが最大の難所だったかというと、「順次処理を書いたつもりなのに順次処理してくれない」という、常識破りの大変化があったことだと思う。 手続き型のプログラミング言語でプログラムを書く場合、プログラマが と記述したら、コンピュータは

    Windows 8のC++でプログラミングの常識がひっくり返った
    neumann
    neumann 2013/04/04
    Windows 8/RT用のWindowsストア アプリのプログラムは、上の行の完了を待たずに非同期に次の行を実行し、かっ飛んでいってしまうのだ。
  • its55 lab » C++でShift-JISをUTF-8に変換する

    6月 11th, 2008 Posted in C++ Windowsアプリケーションでもネットワークにつながって、サーバアプリケーションと連携することが多くなってきてますねぇ。ネットワークといえば文字コードはUTF-8なイメージがあるワタクシですが、C++ではShift-JISなアプリばっかり作ってきたので、UTF-8に変換するにはどうしたらいいの?ってことでまとめます。 C++でShift-JISをUTF-8に変換するには、 Shift-JIS→UTF-16→UTF-8 の順番で変換する必要があります。 そもそも、UTF-16とUTF-8はどう違うのか。UTF-16は文字に割り当てられる番号(コードポイント)が2バイトで格納されます。一方UTF-8は、0~127のコードポイントは1バイトで格納され、128から上のコードポイントは、2~6バイトで格納されます。0~127のコードポイントで

  • 2-2-14.あるウィンドウをアクティブにしない方法(Windows API Topics)

  • 電子工作のためのWindowsプログラミングメモ(仮)

    by K.I Index 概要 QuickDrawとSDK リソースについて 何故SDKを使うのか 電子工作に必要な機能 プログラム環境 とりあえずVC++ 斬新すぎるインターフェース ライブラリの追加は? 古い形式 'LPCWSTR'に変換できません TEXTについて(追記) 漢字の扱い charとWCHARとTCHAR 文字列定数 _tWinMain DLLの場合 結局は Windowシステム Updateイベント システムが発生させるUpdateイベント アプリケーションが発生させるUpdateイベント オフスクリーン・テクニック アクティベートイベント そういうことで Windowsプログラムの基構造 WinMain InitInstance WndProc プロジェクトの構成 メッセージについて WM_CREATE WM_PAINT WM_ACTIVATE WM_TIMER W

  • VC++でGDI+ そにょ6 〜画像の描画2:中心回転〜 - yuyarinの日記

    中心回転 ゲームなどのスプライトは中心座標が指定されているのが普通である。では、画像の中心を回転中心とした回転関数を書いてみよう。前回紹介した変形描画メソッドを使う。 DrawImage(Image *srcImage, const Point *dstPoints, INT count); DrawImage(Image *srcImage, const PointF *dstPoints, INT count); 描画する中心座標を(cx, cy)とする。これを中心に時計回りにangle度回転させる。srcからの切り取りなどは各自実装して頂きたい。 #include math.h Status DrawRotateImage(Graphics *graphics, Image *srcImage, INT cx, INT cy, REAL angle) { UINT w = srcIm

    VC++でGDI+ そにょ6 〜画像の描画2:中心回転〜 - yuyarinの日記
    neumann
    neumann 2008/05/19
    gdi+ SetTransform RotateFlip
  • Pasture | 2005/10/28

    GDI+ はとても強力な描画命令を持っていて便利だけども、使ってみるとかなり遅い。 かなり単純な図形しか描画しなくても遅い。ということで、描画自体の速度はともかく、描画したGDI+のオフスクリーンサーフェスから、ウインドウへの転送速度が足を引っ張っていそうだ。 webで探してみてもやはりオフスクリーンサーフェスからの転送速度が遅いということを書いてあるページがいくつか見つかった。(このへんとか) ということで、自分でもいろいろ調査してみた。 まずは一番シンプルで一般的と思われるコードは以下であり、これが遅い。 // オフスクリーンサーフェスの生成 Gdiplus::Bitmap bitmap(rect.Width(), rect.Height(), PixelFormat24bppRGB); // オフスクリーンサーフェスに Graphicsクラスを使って描画 Gdiplus::Graph

    neumann
    neumann 2008/05/18
    GDI+ 画像表示速度 高速化 詳しく調査されていて感動した。 ベンチマークしてみる。
  • スタティックテキストの文字色 - ab.com コミュニティ

    スタティックテキストの文字色 質問やその返信やヘルプや検索や、、、色々見ましたが、どうにも、、、 はずかしいのですが、怒らずに教えてくださいまし。 以下は、新規で pj を作って、Static1 を1つ貼り付けただけの状態です。 標準の黒文字 Text1 を、例えば、赤に変えるために必要な最低限の追加コードを教えていただけると助かります。その後のイタズラはまた自分で調べてみます。 EXE呼出し直後やイベントで変えるのではなく、できれば MainWnd.sbp の1つの sub(またはFunction)内で変えたいのですが。。。 test7.wnd ---------------------------------------- WINDOW:MainWnd HANDLE = hMainWnd POINT = -2147483648,-2147483648 SIZE = 480,360 CA

    neumann
    neumann 2008/05/15
    STATIC WM_CTLCOLORSTATIC GetSysColorBrush スタティックの色変更
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    neumann
    neumann 2008/05/15
    createwindow static wm_command hmenu
  • 近藤妥の C言語で始める Windowsプログラミング

    近藤妥の C言語で始める Windowsプログラミング ようこそ、Windowsプログラミングの世界へ ここでは、Windows上で動くアプリケーションを開発するもっとも原始的でもっともパワフルな方法の基礎を説明します。そう、WindowsのWIN32APIをC言語でダイレクトに用いる方法を説明するのです。 VBなどのRADツールがもてはやされる昨今、なぜC言語でWindowsプログラミングなのでしょうか?たしかに、VBなどのRADツールは、データベースとのやり取りをするユーザーインターフェースを作るのには十分です。また、MFCなどを用いる事により、高速なアプリケーションを容易に組むことは可能です。しかし、筆者の経験から極端な例を挙げると、ネットスケープナビゲーターのプラグインの開発には、いかなるRADツールやMFCなどのクラスライブラリーも役に立ちませんでした。つまり、R

    neumann
    neumann 2008/05/15
    ダイアログ
  • Win32 API入門

    標準 Windows API ウィンドウの生成や描画処理などの基的な API を紹介します。 コモンコントロール Windows が提供する標準的なダイアログコントロール API です。 マルチメディア API 映像や音楽を処理するためのマルチメディア API です。 Windows ソケット ネットワークデバイスからデータを送受信するための API です。

  • VC++によるWin32プログラミングTips ホームページ

    ★このホームページでは、文で紹介したサンプルコードのみを掲載します。 プログラムに関する説明や解説は書をお読みください。 なお、文中のプログラムの間違い・追加事項等があった場合には、このホームページ上で随時追加・変更していきます。 下記の一覧でマークのあるものが変更された個所です。 ★ 目次 ★ウィンドウ関係 タイトルバーにあるボタンを制御 ウィンドウサイズをCFormViewの大きさにあわせる ウィンドウを中央に表示する 通常のウィンドウでもTABキーでコントロールを移動する ウィンドウ幅(高さ)のリサイズ制御 前回のウィンドウ位置(サイズ)の復元 ウィンドウ上からマウスが離れたことを検出 ウィンドウ上にマウスが来た時だけカーソルを変更 デスクトップのサイズ取得 全てのウィンドウを取得(1999.04.28) ↑Window

    neumann
    neumann 2008/05/11
    フルスクリーン
  • スレッドを調べまわって分かったことをメモ - かせいさんとこ

    こうですか?分かりません!>< WIN32のみのお話です。 スレッドって結構実装依存なのね…。 先にまとめ windowsは_beginthreadex推奨(CreateThreadはメモリリークの危険あり) _beginthread、_beginthreadexを呼び出すには、process.h をinclude _beginthreadexに入れられる関数ポインタは、__stdcall か __clrcall __stdcall は static WINAPI 〜 __clrcall は CLR系なので今回は未調査 非staticなメンバメソッド(__thiscall)を呼び出すには、ラッパをかぶせる→staticでないクラスメンバ関数を_beginthreadで実行させる方法。 - かせいさんとこ CreateThread C++では無くCの関数。 そのまま使うとメモリリークを起こす

    スレッドを調べまわって分かったことをメモ - かせいさんとこ
    neumann
    neumann 2008/04/27
    マルチスレッド WINAPI __stdcall __clrcall __cdecl __thiscall _beginthreadex
  • The So-Software Studio

    2013/11/23 Document - TypeScript プログラミング 公開。 2012/11/04 Document - [SL4A] WSGI 公開。 2012/03/31 Document - [ATL/WTL] WTL8.1.11324 から WTL8.1.12085 への変更点 公開。 2012/03/29 Document - [ATL/WTL] Visual Studio 2010 へ WTL をインストール 公開。 2012/02/04 Document - [SL4A] HTTP サーバ 公開。 2012/01/04 Document - [SL4A] SQLite 公開。 2011/12/04 Document - [ATL/WTL] WTL8.1.9127 から WTL8.1.11324 への変更点 公開。 2011/10/30 Document - [SL

  • Sunday Coding

    一応、WTLがメインのつもり。 「間違ったこと書いてるの見つけた」 「ちょっとまった、その主張はおかしい」 「配布ファイルの内容に不服・コメントがある」 などという方は、こちらからメールお願いします。 Abo. 「・・・そんな俗なこと言って笑ってられるのも今のうちだ」 Bla. 「世の中は神の手でしか動かないのさ」 Cus. 「お前が神の手であることをアプリオリに否定できんからな・・・」 Doe. 「それは神という概念から生じる問題だ」 Eri. 「ではなぜ我々は神を考えることができる?」 Fer. 「それが分かれば私たちのいぶちがなくなるよ・・・」 ~ "MiNer Seria" より ~

  • Simple DirectMedia Layer: Table Of Contents

    [次] 目次: 著者紹介 Simple DirectMedia Layer これは何ですか? SDL はフリーなクロスプラットフォームの マルチメディア開発用 API です。 ゲームで使われています。 ゲーム用 SDK で使われています。 エミュレータで使われています。 デモで使われています。 マルチメディアアプリケーションで使われています。 何ができますか? ビデオ イベント オーディオ CD-ROM オーディオ スレッド タイマー エンディアン非依存 どのプラットフォームで 動きますか? Linux Win32 BeOS 非公式の移植、移植作業中 Simple DirectMedia Layer API を使う ライブラリの初期化 ビデオ ビデオモードの選択と設定(簡単な方法) 画面へのピクセル描画 画像のロードと表示 イベント イベントの待機 イベントの取得 イベ

  • ファイルやディレクトリの存在確認を行う方法

    こんな方法もあります。 <サンプル> #include <windows.h> int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCommandLine, int cmdShow) { HANDLE hFind; WIN32_FIND_DATA fd; hFind=FindFirstFile(パス名,&fd); if (FindNextFile(hFind,&fd) || !lstrcmpi(ファイル名,fd.cFileName)) MessageBox(0,"指定のパスは存在します","結果",MB_ICONINFORMATION); else MessageBox(0,"指定のパスは存在しません","結果",MB_ICONERROR); FindClose(hFind); retur

    ファイルやディレクトリの存在確認を行う方法
  • WisdomSoft

    WisdomSoft(旧) このサイトはすでに運用を停止しています。 新しいコンテンツはこちらをご覧ください ■Products■ 書籍 ソフトウェア 読C 読Java Javaアプリケーション作成講座 Windowsゲームプログラミング ゲームエンジン プログラミング C#ゲームプログラミング Cisqua Developers Network プログラミング システムとAPI C言語入門 C++入門 C#入門 D言語入門 Java言語入門 Objective-C入門 Lisp入門 Perl入門 PHP入門 アセンブリ言語入門 Win32 API入門 標準 Windows API コモンコントロール マルチメディア API Windows ソケット JavaAPI入門 AWT入門 Swing入門 ネットワーク入門 Microsoft .NET入門 DirectX入門 OpenGL入門

  • 窓の杜 - 【NEWS】Win32アプリケーション用のダイアログリソースをGUIで作成できる「ResEdit」

    Win32アプリケーション用のダイアログリソースをGUIで作成できるソフト「ResEdit」v1.3.7.3が、2月17日に公開された。Windowsに対応するフリーソフトで、編集部にてWindows XPで動作確認した。現在、作者のホームページからダウンロードできる。 「ResEdit」は、Win32アプリケーションの開発に用いられるダイアログリソースなどを作成・編集できるリソースエディター。ダイアログなどをGUIで設計したり、「Microsoft Visual Studio」のリソースエディターで作成したRCファイルを編集することが可能。統合開発環境を使うほどでもないようなシンプルで軽量なGUIアプリケーションを開発する際などに便利だ。 ユーザーインターフェイスは「Microsoft Visual Studio」を模しており、ボタン・チェックボックス・コンボボックスなどのコントロールを

  • Download Visual Studio 2005 Retired documentation from Official Microsoft Download Center

  • 1