なでしこv1 コード一覧

ファイルコピー・ファイル移動

ファイルコピー

デスクトップ上のすべての.txtファイルをDropboxにコピーします。

「{デスクトップ}*.txt」から、  
「C:\Users\ユーザー\Dropbox」へファイルコピー。
            

ファイル移動

デスクトップ上のすべての.txtファイルをDropboxに移動します。

「{デスクトップ}*.txt」から、  
「C:\Users\ユーザー\Dropbox」へファイル移動。
            

無限ループでコピー(1時間ごとに実行)

.txtファイルを1時間ごとにコピーするプログラムです。

真の間 // 無限に繰り返す
    「{デスクトップ}*.txt」から、  
    「C:\Users\ユーザー\Dropbox」へファイルコピー。
    3600秒待つ // 1時間待機
            

コメントの使い方

単行コメント

// この行はプログラムから無視されます
            

複数行コメント

/*
この間に書かれたコメントはプログラムの実行から無視されます。 
*/
            

母艦の表示を非表示にする方法

母艦のウィンドウ表示をオフにするコードです。

!母艦設計=「母艦の可視はオフ」
            

複数ファイルコピー

単純なコピー(複数のコピー先を個別に指定)

コピー元=「{デスクトップ}a\test.txt」  
コピー先1=「{デスクトップ}b\test.txt」  
コピー先2=「{デスクトップ}c\test.txt」  

コピー元からコピー先1へファイルコピー。  
コピー元からコピー先2へファイルコピー。  
            

コピー先が増えるたびに行を追加する必要があります。


コピー先をリスト化して反復処理

複数のコピー先をまとめて処理する簡潔な方法です。

コピー元=「{デスクトップ}a\test.txt」  
コピー先=「{デスクトップ}b\test.txt  
{デスクトップ}c\test.txt  
{デスクトップ}d\test.txt」  

コピー先を反復 // コピー先リストを1つずつ処理  
    コピー元から対象へファイルコピー。  
            

説明

コピー先が増えてもリストに追加するだけで対応可能!

音声入力制御(Windows 11)

ホットキーを利用して音声入力を効率的に操作するコードです。

母艦は「メインフォーム」  
そのクライアントW=216 # ウィンドウの幅を設定  
そのクライアントH=48 # ウィンドウの高さを設定  
そのタイトル=「音声チャット発信」 # ウィンドウのタイトルを設定  

// タスクトレイに母艦(メインウィンドウ)を配置
母艦をタスクトレイ入れる。

// タスクトレイアイコンをクリックした際の動作を定義
母艦のタスクトレイクリックした時は~
  母艦のタスクトレイ出す。
    終了

// ホットキー設定と対応する機能
「{INSERT}」に「発信」をホットキー登録
●発信
    『&h』をキー送信 # "&h"を送信(発信開始のショートカットを模倣)  
    6秒待つ # 次の動作の前に6秒待機  
    『{ENTER}』をキー送信 # Enterキーを送信(発信を確定)  

「Home」に「修正」をホットキー登録
●修正
    『^a』をキー送信。 # Ctrl + Aを送信して全選択  
    0.5秒待つ # 少し待機  
    『{DEL}』をキー送信 # Deleteキーを送信して選択内容を削除  

「PAGE DOWN」に「エンタ」をホットキー登録
●エンタ
    『{ENTER}』をキー送信 # Enterキーを送信  

「f7」に「コピー」をホットキー登録
●コピー
    『^a』をキー送信 # Ctrl + Aを送信して全選択  
    『^c』をキー送信 # Ctrl + Cを送信してコピー  

「f8」に「ペースト」をホットキー登録
●ペースト
    『^v』をキー送信 # Ctrl + Vを送信してペースト  
    『{ENTER}』をキー送信 # Enterキーを送信  

「f11」に「おわる」をホットキー登録
●おわる
    「taskkill /IM vnako.exe /F」を起動。 # なでしこ(vnako.exe)のプロセスを強制終了  
            

各セクションの説明

  1. ウィンドウ設定: メインウィンドウ(母艦)のサイズとタイトルを設定(幅216、高さ48)。
  2. タスクトレイ管理: ウィンドウをタスクトレイに格納、クリックで復元。
  3. ホットキーの登録: INSERTで発信、F7でコピーなど。
  4. 操作の内容: ショートカットキー(例: Ctrl + A)で効率化。
  5. プログラム終了: F11でプロセスを強制終了。

音声入力の操作が効率化され、簡単に制御できます。

画像ファイルをまとめてリサイズ

出典: 第6回

#設定
変更幅=640
変更高=480
結果フォルダ=「{デスクトップ}変換結果\」
結果フォルダのフォルダ作成。
#初期設定
処理用とはイメージ。
#処理開始
フォルダ選択して、対象フォルダに代入。
対象フォルダ&「*.jpg;*.jpeg;*.png」のファイル列挙。
反復
  母艦のタイトルは対象。
  処理用の画像は、対象フォルダ&対象。
  処理用を変更幅,変更高で画像比率変えずリサイズ。
  処理用を結果フォルダ&対象へ画像保存。
「終わりました」と言う。
            

指定時刻にWindowsを終了

# --- 終了時刻
「終了する時刻は?(例)2:30」と尋ねて、終了時刻に代入。
もし、終了時刻が空ならば、終わり。
# --- 01:23 の形式切りそろえる
終了時刻を「:」で区切る。
時=それ【0】
分=それ【1】
指定時=時を2でゼロ埋め
指定分=分を2でゼロ埋め
# --- 終了時刻の監視
オンの間
    今を「:」で区切る
    時=それ【0】
    分=それ【1】
    もし(指定時=時)かつ(指定分=分)ならば「Windowsを終了します」と言う
     10秒待つ
     WINDOWS終了。
    母艦のタイトルは「{今}→{終了時刻}」
    母艦をタスクトレイ入れる
    母艦のタスクトレイクリックした時は~
      終わる
            

ゲーム補助ツール

母艦の基本設定

母艦は「メインフォーム」  
そのクライアントW=248 # ウィンドウの幅を設定  
そのクライアントH=48 # ウィンドウの高さを設定  
そのタイトル=「ゲーム名」 # タスクバーで表示する名前を設定  

母艦をタスクトレイ入れる。
母艦のタスクトレイクリックした時は~
  母艦のタスクトレイ出す。
  終了
            

ホットキーでヒール操作

「Num 9」に「ヒール」をホットキー登録
●ヒール
      208,674へマウス移動
      マウスクリック
      695,690へマウス移動
            

キー送信を利用した操作

「Num 9」に「ヒール」をホットキー登録
●ヒール
      // Alt + 1
      『^%{1}』をキー送信
      // Ctrl + 1
      『^{1}』をキー送信
            

一定間隔での操作

方法1: 固定回数の繰り返し

「Num 9」に「ヒール」をホットキー登録
●ヒール
      3回
          208,674へマウス移動
          マウスクリック
          3秒待つ
            

方法2: 回数指定のループ

回数で 1 から 5 まで繰り返す
       「なでしこ1」と表示
       3秒待つ
            

方法3: 無限ループ

真の間
      (繰り返す内容)
    600秒待つ
            

複数の無限ループ

Aタイマーとはタイマー。
Aタイマーについて
 間隔は300。
 時満ちた時は~「A」を表示。
 開始。

Bタイマーとはタイマー。
Bタイマーについて
 間隔は500。
 時満ちた時は~「B」を表示。
 開始。
            

ウィンドウの位置指定

母艦のX=965。
母艦のY=645。
            

画面を邪魔しないサンプルコード

母艦をタスクトレイ入れる。
母艦のタスクトレイクリックした時は~
 母艦のタスクトレイ出す。
  終わる。
            

ホットキーとマウス操作を組み合わせ、ゲームの自動化や補助操作を効率化。

画面の左右に別々のブラウザでお気に入りを開く

「C:\Program Files\Mozilla Firefox\firefox.exe http://drrrkari.com/room/」を起動。
2秒待つ。
『&{RIGHT}』をキー送信。 // ウィンドウを画面右側に移動
3秒待つ。
「C:\Program Files\Google\Chrome\Application\chrome.exe -new-window https://abema.tv/now-on-air/abema-anime-2」を起動。
3秒待つ。
『&{LEFT}』をキー送信。 // ウィンドウを画面左側に移動
終了。
            

説明

  1. Firefoxでお気に入りを開く: firefox.exeでURLを開き、2秒待機。
  2. ウィンドウを右側に移動: Windowsのスナップ機能で右半分に移動。
  3. Chromeで別のお気に入りを開く: 新しいウィンドウでURLを開き、3秒待機。
  4. ウィンドウを左側に移動: 左半分に移動。
  5. 終了: プログラム終了。

母艦の最大化ボタンを無効化

オフに母艦の最大化ボタン有効変更。
            

母艦のサイズ変更を防ぎ、レイアウトを固定。


全角半角キー代替

F9キーで全角/半角キー入力を代替します。

母艦は「メインフォーム」
そのタイトル=「日本語→英語」

母艦をタスクトレイ入れる。
母艦のタスクトレイクリックした時は~
  母艦のタスクトレイ出す。
  終了

「f9」に「IME」をホットキー登録
●IME
   『{IME}』をキー送信

「f7」に「コピー」をホットキー登録
●コピー
   『^a』をキー送信
   『^c』をキー送信

「f8」に「ペースト」をホットキー登録
●ペースト
   『^v』をキー送信
   『{ENTER}』をキー送信

「F11」に「おわる」をホットキー登録
●おわる
   「taskkill /IM vnako.exe /F」を起動。
            

WazeEditorの編集を快適にする

※※※積み木デザイナ:ここから※
※ 以下はデザインデータです。
※ コメントを削除しないようにしてください。
※ ---
※母艦とはフォーム##生成
母艦は「メインフォーム」
そのクライアントW=392#数値
そのクライアントH=208#数値
そのタイトル=「WazeEditor」#文字列
※ ---
ボタン1とはボタン##生成
そのX=8#数値
そのY=8#数値
そのW=120#数値
そのH=32#数値
そのテキスト=「¥  掃除」#文字列
そのクリックした時は~ボタン1__クリックした時#イベント
※ --- 以下同様にボタン2~13の定義(省略)
「WazeEditor」を窓最前面。

母艦をタスクトレイ入れる。
母艦のタスクトレイクリックした時は~
  母艦のタスクトレイ出す。
  終了

●ボタン1__クリックした時
  「*Chrome*」を窓アクティブ
  『1』をキー送信。
  0.5秒待つ
  『2』をキー送信。
  0.5秒待つ
  『3』をキー送信。
  0.5秒待つ
  『4』をキー送信。
  0.5秒待つ
  『5』をキー送信。
  0.5秒待つ
  『6』をキー送信。
  0.5秒待つ
  『%s』をキー送信。
  3秒待つ
  『%s』をキー送信。
  母艦をタスクトレイ入れる。
            

※ ボタン2~13およびホットキー登録は省略されていますが、元の内容を保持し、フォーマットを統一。

マウス座標の取得と表示

マウスカーソルの座標をリアルタイムで取得し、最大6つの座標を保存・表示するツール。HOMEキーで座標を記録、ENDキーでプログラム終了、コピーボタンで各座標をクリップボードにコピー、クリアボタンで全座標をリセットします。


※※※積み木デザイナ:ここから※
※ 以下はデザインデータです。
※ コメントを削除しないようにしてください。
※ ---
※母艦とはフォーム##生成
母艦は「メインフォーム」
そのクライアントW=208#数値
そのクライアントH=240#数値
そのタイトル=「座標」#文字列
※ ---
ラベル1とはラベル##生成
そのX=40#数値
そのY=10#数値
そのW=104#数値
そのH=16#数値
そのテキスト=「マウスカーソル座標」#文字列
※ ---
ラベル3とはラベル##生成
そのX=8#数値
そのY=36#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「1」#文字列
※ ---
メモ1とはメモ##生成
そのX=24#数値
そのY=36#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン2とはボタン##生成
そのX=98#数値
そのY=36#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン2__クリックした時#イベント
※ ---
ボタン8とはボタン##生成
そのX=152#数値
そのY=36#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン8__クリックした時#イベント
※ ---
ラベル4とはラベル##生成
そのX=8#数値
そのY=64#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「2」#文字列
※ ---
メモ2とはメモ##生成
そのX=24#数値
そのY=64#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン3とはボタン##生成
そのX=98#数値
そのY=64#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン3__クリックした時#イベント
※ ---
ボタン9とはボタン##生成
そのX=152#数値
そのY=64#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン9__クリックした時#イベント
※ ---
ラベル5とはラベル##生成
そのX=8#数値
そのY=92#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「3」#文字列
※ ---
メモ3とはメモ##生成
そのX=24#数値
そのY=92#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン4とはボタン##生成
そのX=98#数値
そのY=92#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン4__クリックした時#イベント
※ ---
ボタン10とはボタン##生成
そのX=152#数値
そのY=92#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン10__クリックした時#イベント
※ ---
ラベル6とはラベル##生成
そのX=8#数値
そのY=120#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「4」#文字列
※ ---
メモ4とはメモ##生成
そのX=24#数値
そのY=120#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン5とはボタン##生成
そのX=98#数値
そのY=120#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン5__クリックした時#イベント
※ ---
ボタン11とはボタン##生成
そのX=152#数値
そのY=120#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン11__クリックした時#イベント
※ ---
ラベル7とはラベル##生成
そのX=8#数値
そのY=148#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「5」#文字列
※ ---
メモ5とはメモ##生成
そのX=24#数値
そのY=148#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン6とはボタン##生成
そのX=98#数値
そのY=148#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン6__クリックした時#イベント
※ ---
ボタン12とはボタン##生成
そのX=152#数値
そのY=148#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン12__クリックした時#イベント
※ ---
ラベル8とはラベル##生成
そのX=8#数値
そのY=176#数値
そのW=16#数値
そのH=16#数値
そのテキスト=「6」#文字列
※ ---
メモ6とはメモ##生成
そのX=24#数値
そのY=176#数値
そのW=68#数値
そのH=24#数値
そのテキスト=「」#文字列
そのスクロールバー=「」#文字列
※ ---
ボタン7とはボタン##生成
そのX=98#数値
そのY=176#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「コピー」#文字列
そのクリックした時は~ボタン7__クリックした時#イベント
※ ---
ボタン13とはボタン##生成
そのX=152#数値
そのY=176#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「削除」#文字列
そのクリックした時は~ボタン13__クリックした時#イベント
※ ---
ボタン14とはボタン##生成
そのX=152#数値
そのY=204#数値
そのW=48#数値
そのH=24#数値
そのテキスト=「全削除」#文字列
そのクリックした時は~ボタン14__クリックした時#イベント
※ ---
ラベル9とはラベル##生成
そのX=32#数値
そのY=208#数値
そのW=96#数値
そのH=16#数値
そのテキスト=「座標記録(HOME)」#文字列
※※※積み木デザイナ:ここまで※

母艦のX=0
母艦のY=423

オフに母艦の最大化ボタン有効変更
「座標」を窓最前面

※ 変数定義
カウンタとは数値
カウンタ=0

※ ホットキー登録
「HOME」に「座標コピー」をホットキー登録
「END」に「停止」をホットキー登録

※ 座標コピー処理
●座標コピー
    クリップボードは机上マウスX & "," & 机上マウスY
    カウンタ=カウンタ+1
    もし カウンタ>6 ならば
        カウンタ=0
    ここまで
    もし カウンタ=1 ならば
        メモ1のテキスト=クリップボード
        戻る
    ここまで
    もし カウンタ=2 ならば
        メモ2のテキスト=クリップボード
        戻る
    ここまで
    もし カウンタ=3 ならば
        メモ3のテキスト=クリップボード
        戻る
    ここまで
    もし カウンタ=4 ならば
        メモ4のテキスト=クリップボード
        戻る
    ここまで
    もし カウンタ=5 ならば
        メモ5のテキスト=クリップボード
        戻る
    ここまで
    もし カウンタ=6 ならば
        メモ6のテキスト=クリップボード
        戻る
    ここまで
    戻る

※ 停止処理
●停止
    終了

※ コピーボタンのクリックイベント
●ボタン2__クリックした時
    クリップボード=メモ1のテキスト
    戻る

●ボタン3__クリックした時
    クリップボード=メモ2のテキスト
    戻る

●ボタン4__クリックした時
    クリップボード=メモ3のテキスト
    戻る

●ボタン5__クリックした時
    クリップボード=メモ4のテキスト
    戻る

●ボタン6__クリックした時
    クリップボード=メモ5のテキスト
    戻る

●ボタン7__クリックした時
    クリップボード=メモ6のテキスト
    戻る

※ 削除ボタンのクリックイベント
●ボタン8__クリックした時
    メモ1のテキスト=「」
    カウンタ=0
    戻る

●ボタン9__クリックした時
    メモ2のテキスト=「」
    カウンタ=1
    戻る

●ボタン10__クリックした時
    メモ3のテキスト=「」
    カウンタ=2
    戻る

●ボタン11__クリックした時
    メモ4のテキスト=「」
    カウンタ=3
    戻る

●ボタン12__クリックした時
    メモ5のテキスト=「」
    カウンタ=4
    戻る

●ボタン13__クリックした時
    メモ6のテキスト=「」
    カウンタ=5
    戻る

●ボタン14__クリックした時
    メモ1のテキスト=「」
    メモ2のテキスト=「」
    メモ3のテキスト=「」
    メモ4のテキスト=「」
    メモ5のテキスト=「」
    メモ6のテキスト=「」
    カウンタ=0
    戻る
            

説明

ゲームやアプリケーションでのマウス操作の座標確認に便利なツールです。

キー送信

分類: ソフト制御/OS/プロセス (nakoctrl.dll)/キー操作
種類: 命令
引数: {=?}AにSを|Aへ

タイトルAのウィンドウに文字Sを送信。Aを省略するとアクティブなウィンドウに送信。

「notepad.exe」を起動。
1秒待つ。
「abc」をキー送信。
0.5秒待つ。
「ABC」をキー送信。
0.5秒待つ。
『^v』をキー送信。 # Ctrl+Vでクリップボード貼り付け
            

特殊キーの指定

詳細なキー一覧はこちら

ホットキー登録

分類: ソフト制御/OS/プロセス (nakoctrl.dll)/ホットキー
種類: 命令
引数: KEYにEVENTを|KEYでEVENTを

指定したキー(KEY)に対して命令や関数(EVENT)を設定。

「Ctrl+A」に「挨拶処理」をホットキー登録
●挨拶処理
  「こんにちは」と言う。
            

利用可能なキー