タグ

プログラミングとWindowsに関するnaqtnのブックマーク (12)

  • Pin program (with parameters) to Taskbar using PS in Windows 10

  • Windowsに土足で乱入?! 〜 フック関数の使い方 : DSAS開発者の部屋

    今日の多くの OS がそうであるように、Windows にも自作のプログラムコードを特定のプロセスへ介入させることのできる「フック」という仕組みがあります。自分自身のプロセスをフックすることもできますが、他のプロセスをフックすることで通常のアプリケーションプログラミングの枠を超えた様々な興味深い処理の実現が可能となります。 ・所定のプロセスに対する Windows メッセージの監視・捕捉 ・所定のプロセスでの特定のイベントに呼応する自作コードの注入 ・既存のアプリケーションの所作を変更 etc. 「自作のコードをあるプロセスに介入させる」とはどういうことでしょう? メモリ上のモジュールイメージにアクセスしてマシン語命令を書き換えて・・という怪しげな方法もありそうですが、Windows では DLL を利用することで比較的容易にこの命題を解決できます。 このことを逆に考えると、自作の DLL

    Windowsに土足で乱入?! 〜 フック関数の使い方 : DSAS開発者の部屋
  • 公開用プログラマ技術ノート | OpenFileDialogを表示するときにフリーズする原因の調査手順

    概要 不具合の解決手順は「OpenFileDialogを表示するときにフリーズする不具合の解決」に記載していますので、現象を解決したい方はこちらをお読みください。 ここでは「OpenFileDialogを表示するときにフリーズする不具合の解決」の信憑性の為に調査手順を記載します。 また、その他の不具合の原因調査にも使える手順と思いますので、別の不具合で困っている方のご参考にもなればと思います。 1.現象の再現手順を把握 OpenFileDialog.ShowDialogを何回かすると現象が発生することを把握しました。 現象が再現できるようになったので、どのような場合に現象が発生するか/しないかを調べて原因箇所を特定していきます。 2.ウィルス対策ソフトを停止して、現象が発生するかを確認 不具合の原因の筆頭に上がるのがウィルス対策ソフトです。これを停止して現象が発生するかを確認するのがまずは

  • kaya: IME開発者向けリンク集

    CorvusSKKというDDSKKの入力方式を用いたWindowsで動くIMEを開発しております。 DOS、Windowsの世界では過去に様々なFEP、IMEが存在していましたが、現在のWindowsにおいては選択肢がちょっと少ないのでは?ということで、これからIMEを作ってみたい方向けに有益かと思われるリンクをまとめてみました。 Text Services Framework (TSF) 実装例 ソースコードが公開されているもの CorvusSKK 手前味噌ですみません。 tsf-tutcode CorvusSKKをフォークして頂きました。漢字直接入力機能が追加されています。 tsf-vim vi風な操作をIMEとして実装されたもの Mozc Google日本語入力のオープンソース版。辞書はそれに劣るようですが、MacLinuxAndroidChromeOSでも動くそうです。 ソー

  • Windows 8でIMEに求められる新しい要素とはなにか? (1/2)

    Windows 8はWindows 7との互換性があるものの、新しいWindows 8スタイル環境では、原則として従来のデスクトップアプリケーションは動作しない(例外はInternet Explorerとエクスプローラー)。しかしかな漢字変換入力の機能は、Windows 8スタイル環境でも必要だ。Windows 8スタイル環境とデスクトップの両方で同一のプログラムを使うためには、マイクロソフトの要求仕様に合わせて開発する必要がある。 今回はWindows 8とIMEの関係について説明しよう。 Windows XP時代に導入されたTSF Windows 8スタイル環境とデスクトップ環境の両方で使えるかな漢字変換入力プログラムを開発するには、まず「TSF」(Text Service Framework)というAPIセットに対応しなければならない。またWindows 8スタイルが要求する条件や、

    Windows 8でIMEに求められる新しい要素とはなにか? (1/2)
  • TSF を使う (1) - Windows Input Method の歴史 - NyaRuRuが地球にいたころ

    前回もお伝えしたように,そもそも TSF の話を急いでする必要はなくなりました. Windows Vista で当初私が懸念していた Full IME-aware applications の UI ウィンドウ制御に関する互換性問題は,DirectX SDK のサンプルに存在していたバグが原因であり,Vista 開発陣は IMM32 の互換機能をきちんと実装していること 現在いくつかの MMORPG 等で発生している Windows Vista での日本語入力に関する問題は,もし上記 DirectX SDK のバグと同じコードが使用されているのであれば,非常に簡単に修正可能であること 今後 Legacy IM が TSF で置き換えていく流れが確実になっているとはいえ,これで当面急いで TSF に乗り換える必要は無いと思います. そういうわけでしばらく時間をおいてもいいのですが,いったんま

    TSF を使う (1) - Windows Input Method の歴史 - NyaRuRuが地球にいたころ
  • アレ用の何か

    サンプルプログラム(TsfReconv.zip)のダウンロード IMM と TSF IMM で変換候補リストを取得するには ImmSetCompositionString(), ImmNotifyIME(), ImmGetCandidateList() を 使用します。ImmSetCompositionString() でコンポジション文字列(未確定文字列)をセットし、ImmNotifyIME() で 再変換要求および変換候補リストウィンドウの表示を行い、ImmGetCandidateList() を使って変換候補リストを取得 します。 しかし、Vista からはアクティブになっている IME が TSF(Text Services Framework) の TIP の場合に先の API に互換性が無くなり、変換候補リストを取得できなくなりました。「アクティブになっている IME が TS

  • Windows 環境下での PDF 生成で日本語文字を問題なく扱える R Markdown 設定 - Qiita

    R Markdown の処理環境は 2015年9月現在、英語マニュアル等を参考に素直にセットアップしただけの状態では、Windows で日語を含んだ R Markdown を書いて PDF 出力すると、文字の化けや行あふれが処置されないなどの現象が発生してしまいます。 これらを解決する設定を テンプレートとして使えるファイル にまとめてみたので紹介します。(あわせて PDFHTML を同じ R Markdown ファイルから作り出すときに問題が起きない対策もほどこしました。) この記事の後半では対処している問題とファイルの記述内容について解説します。 前提 TeX 環境 R Markdown 形式から PDF を得るには TeX 形式を扱う環境が必要です。TeX 環境を整備する手段はいくつかありますが、MikTeX ディストリビューションを使用することにします。 準備として htt

    Windows 環境下での PDF 生成で日本語文字を問題なく扱える R Markdown 設定 - Qiita
    naqtn
    naqtn 2015/10/03
    セルクマ。Word もいけるでよ。
  • GPソフト Wiki - Create

    This page does not exist. Feel free to create it yourself :-)

    naqtn
    naqtn 2014/10/07
    対策が書いてあるところは多いが、原因について。やっぱりそうか。
  • cmd.exe のコマンドラインの仕様を解析してみた - 永遠に未完成

    cmd.exe の引数の扱いがあまりにもカオスだったのでちょっと頑張って調べてみた。 来ならここは公式の資料に当たるのが正しいアプローチだと思うけど、どうしても公式の資料が見つからなかったので、色々試して推測してみることに。 断片的な資料は見付けたけど、完全じゃない。一応URL貼っておく。Windows Server 2003 のヘルプだけど、恐らくそんなに変わらないと思う。 コマンド シェルの概要 コマンド リダイレクト演算子を使用する なので、以下で述べる内容は間違いを含む可能性があります。というか正確さは一切保証されないのであしからず。 検証方法 以下のような引数をただ表示するだけの簡単な C のプログラムを用意した。仮に args.exe とでもしておく。 #include <stdio.h> int main(int argc, char const* argv[]) { in

    cmd.exe のコマンドラインの仕様を解析してみた - 永遠に未完成
    naqtn
    naqtn 2014/09/02
    ここ数日で役立ってる人がなんでこんなに居るんだ。そして俺もその列に加わる。くそぅ。
  • DLLからDLLを呼ぶのはこんなに難しい - kawanon

    DLLの検索パスなんて普通は意識する必要ありません。実行ファイルと同じディレクトリに置いておけばちゃんと読み込んでくれます。しかし、あなたが実行ファイルではなくDLLを開発している場合はちょっと注意が必要です。 今私たちは master.dll を開発しているとします。このDLLは何か別のアプリから使ってもらうための汎用的なライブラリです。例として rundll32.exe から呼び出されるものとしましょう。slave.dll は master.dll が依存している別のライブラリです。 この2つのDLLを同じディレクトリに置いて rundll32.exe から呼び出すとどうなるでしょうか? rundll32 C:\temp\master.dll,Test 結論から言って以下のようになります。 [Win32] LoadLibrary のサーチパス 「Hoge.dll が見つからなかったため

    DLLからDLLを呼ぶのはこんなに難しい - kawanon
  • 8-3. NTFS のセキュリティ機能と落とし穴

    NTFS はその名の通り,Windows NT のファイルシステムである。Windows NT の開発が進められる過程でこれまでのパーソナルコンピュータとは一線を画した(1994 年当時としては)高度で信頼性の高いファイルシステムを実現し,その上で稼動するWindows NT の信頼性そのものを高める目的で作られたものである。 NTFS は当初から次のような機能を備えていた。 64 ビット整数によるファイルサイズ(最大約1.8×1019 バイト) 複数データストリーム データ圧縮機能 ファイル名へのUnicode の採用 高速なファイル名検索 アクセスコントロールリスト(ACL)によるきめ細かなアクセス制御 監査ログ機能 トランザクション処理モデルにもとづくエラーリカバリ機能 ミラーリングやストライピングによる信頼性向上機能 不良セクタの動的再割り当て POSIX サポート(ハードリンク,

    naqtn
    naqtn 2014/06/09
    ファイル名の後にコロンでストリーム指定とな。しらんかった。(そういば $DATA ってどっかで見た気もする)
  • 1