13/12/20 12:22:53.46
>>37
ありがとう。usb外すコマンドライン用のソフトとか
幾つかのフリーソフトを使ってたから助かる。
「文字化け」問題はnkf32が実装で対応できるっぽいね。
長いけどPowerShellによる変換コマンドもあるようだ。
cmdの方がウィンドウズ8.1でもメンテ入ってないような仕上がりだったので
PowerShell学ぶわ。ありがとう。
39:デフォルトの名無しさん
13/12/20 21:18:01.86
C#やVBのコードを書いてコンパイル以外にPowerShellからクラスを追加する技術は有りますか?
40:デフォルトの名無しさん
13/12/22 01:08:25.77
>>39
こういうことではなく?
Add-Type @"
public class Hoge { public int x; }
"@
$x = New-Object Hoge
41:デフォルトの名無しさん
13/12/29 11:16:29.24
違います
42:デフォルトの名無しさん
14/01/03 16:07:43.27
「Powershellからクラスを追加」
どこへ追加したいんだ?
43:デフォルトの名無しさん
14/01/03 16:57:58.28
Add-Class Hoge {
$mProp = 100
function DoSomething {
param(x)
Write-Host x * $mProp }
}
$o = New-Object Hoge
$o.DoSomething(100)
44:デフォルトの名無しさん
14/01/03 20:26:32.08
>>37みたいにラッパーコマンドを書けばいい
とか言ってるけどちょっとだけ追加するとかだと返って一苦労になるんだよね
例えば複雑なバッチファイルにちょっとpowershellのコマンド書きたいとか、できないしね
バッチとかの遺産はそのまま使えないと思った方がいい
45:デフォルトの名無しさん
14/01/11 00:01:38.07
ISE みたいにプロンプト等へのコマンド入力や結果出力と
Read-Host とか Write-Host、[Console]::Writeline なんかを分離したければ
自力でホストを書かないと無理なんだろうか。
powershell -Command - でパイプでつないで他プログラムから使おうとしてるんだけど
Read-Host なんかの対応がすっきりしない。
46:デフォルトの名無しさん
14/01/20 05:25:29.55
単純に全てがオブジェクトになってるってのがプログラマなら面白がるよね
rubyあたりから手できそうでなかったアプローチだ
5年以上経った今となっては目新しくもなんともないけどw
47:デフォルトの名無しさん
14/01/20 05:26:59.35
勝手に独自のwebclientコンポーネントを
curlとかwgetとか名付けてるのはあかんわ
あかんとこもけっこうある
48:デフォルトの名無しさん
14/01/20 09:12:21.99
文法がもうちょい C# (っていうか C っぽいの)を受け付けてたらプログラマ受け良かったんだろなと思う。
49:デフォルトの名無しさん
14/01/24 15:18:36.81
webページにPOSTしてゴニョゴニョするスクリプトを
すぐに書けたはいいんだが.netやってる人はお馴染みの
サーバーによってプロトコル違反が発生しました.
エラーが出て困った
結局powershell.exe.configなんてのを作るはめに・・・これはダサい
50:デフォルトの名無しさん
14/01/25 02:41:18.03
Out-File -FilePath "Test.txt" -InputObject "test"
かっこよすぎワロタ
51:デフォルトの名無しさん
14/01/25 13:34:46.99
powershellを起動させると他のEXCELなどのアプリと同じようにタスクバーにアイコンが表示されますが
起動させたpowershellから何らかのコマンドを実行してこのアイコンを点滅させることはできますか?
つまりpowershellが他のウインドウの下に隠れている場合などでもユーザーに気づかせたいのです。
具体的にはps1ファイルを実行して処理が完了したら、ps1ファイルを実行しているpowershellの
タスクバー上のアイコンを点滅させたいのです。
52:デフォルトの名無しさん
14/01/25 14:03:45.54
Windows API の FlashWindowEx を使えば光らせることが出来るらしい。
Add-Type で適当なクラスを作って P/invoke で呼び出せばいい。
MS 公式で cmdlet 化したものを配布してるからそれつかってみたらどうかしら。
サンプルにある Start-Sleep -Seconds 5; Get-Process -Id $PID | Invoke-FlashWindow を実行してから
最小化してほっといたら5秒後にペカペカ光ったよ。
URLリンク(gallery.technet.microsoft.com)
53:デフォルトの名無しさん
14/01/25 19:35:16.09
PowerShell の言語仕様見てたら普通にプログラミング出来そうと思ったけどそのままだと遅いんだよね。
どれくらい遅いかと言うと最弱レベルだった。
測定は時刻を取って秒が変動するまでの while のループ回数を取った。
Lua(数値)だけは CPU時間なんだけど時刻を数値で取る方法が分からなくて。
速い >>>> 遅い
C# on PowerShell > Lua(数値) > HSP3.31 = JavaScript > Lua(文字) > VBScript >> AutoIt3 = AHK >> UWSC >> PowerShell >> DOSコマンド
測定環境は Core i3 物理2コア Windows 8.1
i++ inc(i)
PS4-C# 4145566 4088694
Lua CPU 1012841 836647
HSP3.31 915425 591546
JS chrom 777203 736391
JS fx 647385
VBScript 539979 340808
Lua文字 525671 473907
AHK Sec 188555 104679
AutoIt3 220890 82255
AHK Now 89020 71513
UWSC 23629 9137
PS4 4194 2108
.bat 471
54:デフォルトの名無しさん
14/01/25 20:20:49.34
まああくまでバッチ処理レベルだしねえ。期待されてるのは。
なんでも出来る感じもするけどそれって結局 .NET がすごいからであって
55:デフォルトの名無しさん
14/01/25 21:49:57.99
ゴミ
56:デフォルトの名無しさん
14/01/26 09:00:16.19
>>53
>時刻を取って秒が変動するまで
よく意味がわからない…
57:デフォルトの名無しさん
14/01/26 09:31:04.45
>>52
うわピカピカ光った!
どうもありがとう~!
でもこれって引数とか沢山あるけど、もう単純に「呼ばれた瞬間に3回点滅!」みたいにして
短く出来ないかな?
いま仕事してる現場で使いたいんだけど、ネット出来ない環境だしUSBメモリとかも使用禁止だから
このスクリプト印刷して持っていって自分で打ち込むしかないんだけど
コメント部分除外してもスクリプトが長いから、打ち込むの遅い自分にはつらい…
書き換えようとトライしたけど自分には高度過ぎて無理だった…
58:デフォルトの名無しさん
14/01/26 09:33:03.88
多分加算命令数/秒ってことでしょ?
ループの1処理ごとに時間取って比較してるのかねえ。
だとすると加算処理の速度比較っていうよりシステムコールの速度比較みたいなもんだな。
あと選別した言語に HSP とかなんで入ってるんだ?
Java とか ruby とか python はどこいったんだ。