PowerShell

ShellのCopyHereを使わずに素の.netでZIPファイルを扱う

.net 3.0のプライベートクラスを利用したZIP圧縮・展開の記事を書いた。 素の.net 3.0以降でZIPファイルを扱う - じゅんじゅんのきまぐれ しかし、更新日付問題があった。 これを解決してみた。 多分、、、.net 2.0以降で動くんじゃなかろうか。 原理 追記 2…

素の.net 3.0以降でZIPファイルを扱う

.net 4.5からZipArchiveクラスが提供されます。 これによりようやくZIPファイルの扱いがまともになるわけですが、、、。 Windows7/8では、素では.net4.5は入っていません。 これをなんとかしたい。

ZipPackageクラスを使ってOfficeファイルを編集する

UWSC公式掲示板に、ワードファイルの新規自動作成についての質問があった。 方法を考えたものの、簡単には実証コードが書けなくて断念したのだが、、、くやしいので再挑戦した。 全てPowershellを使って書いても良かったけど、UWSCでの質問なので、編集周り…

Powershellとautorunsで自動起動をチェックする

Microsoftが無料で提供しているSysinternalsツールのAutorunsを使って、Powershellで自動実行の確認をする。 私はPowershellをランチャーとして使っているので、起動時に組み込んでみた。

PowershellでファイルをBase64エンコード/デコードする

$pathにファイルパスがあるとして [Convert]::ToBase64String([System.IO.File]::ReadAllBytes($path)) $b64strにBase64文字列があり$pathに出力するとして [System.IO.File]::WriteAllBytes($path, [Convert]::FromBase64String($b64str)) ConvertのSystem…

Powershellで覚えるべきたった一つのこと

「help」 ただし、読む根気が必要。ぐぐるのとどちらが早いかは慣れ次第。 以上、、、だと不親切なので、少し解説。

PowershellでTypeからメンバーを取得する

.netのクラスは取得できた。 http://d.hatena.ne.jp/junjun777/20140115/powershell_search_type しかし、コンストラクターがわからない。 から、インスタンスのメンバーがわからない、という事態が発生する。 そこで、また関数を書いてみた。

Powershellでアセンブリを参照しまくる

.netのクラスを探す方法は書いた。 http://d.hatena.ne.jp/junjun777/20140115/powershell_search_type その際、アセンブリが読み込まれていないと探せない。 じゃあ、あらんかぎりを取得してはどうか、ということで書いてみた。 start powershell '-Command…

Powershellで.netクラスを探す

Powershellで.netオブジェクトを扱っていると、名前空間のタイプが面倒。 というか、覚えてない。 例えば正規表現のクラス名と名前空間、覚えてます?タイポしない? そんな時のために関数を書いてみた。

Powershellでwhich

PowershellをCUIランチャーにしたところ、「which」がないことに気付いた。 ということで作成。といっても、Get-Commandですけど。

PowershellでC#等をコンパイルする

.Netにはもれなくコンパイラーが含まれている。 このため、VisualStudio等を導入しなくても、C#等のビルドが可能である。 しかし、ググッても一ページ目に出なかったので、メモ書きする。

Powershellをランチャーにする

長らく、コマンドプロンプトをランチャーとして使ってきたのですが、XPの寿命も尽きようとしているので、Powershellに引っ越すことにしました。 いろいろ便利ですから! CUIランチャーとして使うためにやったことのメモです。

PowershellとUWSCの連携(その2)

PowershellからUWSCにコマンドを実行させる。 前回はIE経由な上に、PowershellとUWSCの二つのスクリプトが必要でした。 PowershellとUWSCの連携 - じゅんじゅんのきまぐれ 今回は、名前付きパイプを使用してIEを排除した上に、メンテするスクリプトを一つに…

Powershellで名前付きパイプを扱う

.netで名前付きパイプを扱う方法ですね。

x64には存在しないScriptControlの代わり

x64環境には、ScriptControlが存在しない。 例えば、x64のPowershellでJScriptオブジェクトを受け取ってしまった場合、扱いに困る。 Get-Memberしても、何も返ってこない、、、。 ScriptControlがいれば、AddObjectして解釈できるのだけど。 ということで、…

任意のプロセスのWM_SYSCOMMANDのSC_CLOSEを無視させる(その2)

前回は、x86オンリーでした。 今回は、「1ファイルでx64/x86両方に対応する」ことを目指しました。

PowershellとUWSCの連携

UWSCのPowershell関数は遅い。 恐らくアセンブリのロードに時間がかかるのだろう、、、。 二回目以降でも遅い。 なんとか早くしたいので、考えてみた。

MACアドレスの取得とUWSCの優位性について

別件調査中に、UWSCでのMACアドレス取得方法を見つけた。 http://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=2855&log=ON&cnt=24 相変わらず素晴らしい。 msgbox(betweenstr(doscmd("ipconfig /all"), "Physical Address. . . . . . . . .…

UIAutomationのサンプル

昨日書いたもののソースを掲載。 クラス名はUIWindowでない方が良いかな。 $source = @" using System; using System.Windows.Automation; using System.Threading; public class UIWindow { private const int _moment = 100; private AutomationElement _a…

Powershellでハッシュ計算

いわゆるフィンガープリント用ですね。 .NETのSystem.Security.Cryptography名前空間を利用しているので、SHA256/SHA384/SHA512あたりも同様です。 # ハッシュ値を計算する function Calc-Hash([System.Security.Cryptography.HashAlgorithm] $alg, [string]…