作ったものリスト
Windows
Oracle
.NET Framework
- nullを許容するDateTimePickerなどのライブラリ(元記事) www.nuget.org
www.nuget.org
PowerBuilder
- PBLの一括エクスポート(元記事)
github.com
【PowerBuilder】PBL内のソースを一括エクスポートする&ソース管理する
当初の目的
PowerBuilderで作成されたアプリケーションをソース管理して、変更点を把握したかった。
それを達成するために全PBLの全ソースを一括エクスポートしたかった。
PowerBuilderの問題点
PowerBuilderを操作しても、PBL単位でしかエクスポートができない。
これはPBLが30も40もあるプロジェクトだと手間で仕方ない。
一度きりなら我慢できるが、ソースを変更する度にその手間が発生するなら目的を達成できない。
作っちまえ!
作りました。
気づいた問題点
PowerBuilderがバカなことに、少しソースを変更しただけで、いじってもいないコードの位置が変わってしまって比較にならない。
ここはもはやご愛嬌として諦めるしかない。
ソース単位ですべて管理することになったので、多少なりとも管理はできるようになった。
一括エクスポートができるという使い方なら問題ないので。
作ったものリスト
Windows
Oracle
.NET Framework
- nullを許容するDateTimePickerなどのライブラリ(元記事) www.nuget.org
www.nuget.org
PowerBuilder
- PBLの一括エクスポート(元記事)
github.com
【VBScript】ショートカットファイルを作成する
VBScriptを使って、バッチから特定のショートカットファイルを作成した場合などに有効。
下記の例では、受け取るパラメーターはこの通り。
ショートカットファイルのファイル名の拡張子はlnkまたはurlでなければならない。
また、作業フォルダは元ファイルのパスとなるようにしている。
No. | 内容 | 例 |
---|---|---|
1 | 元ファイルのパス | C:\hoge |
2 | 元ファイルのファイル名 | 元ファイル.xlsx |
3 | ショートカットファイルのパス | D:\shortcut |
4 | ショートカットファイルのファイル名 | ショートカットファイル.lnk |
create_shortcut.vbs
Dim params Dim sourcePath Dim sourceFile Dim targetPath Dim targetFile ' コマンドライン引数を取得 Set params = Wscript.Arguments If params.Count < 4 Then WScript.echo "コマンドライン引数が足りません" WScript.Quit End If sourcePath = params(0) If Right(sourcePath, 1) <> "\" Then sourcePath = sourcePath & "\" End If sourceFile = params(1) targetPath = params(2) If Right(targetPath, 1) <> "\" Then targetPath = targetPath & "\" End If targetFile = params(3) ' ショートカットを作成 Dim objShell Dim objShortCut Set objShell = WScript.CreateObject("WScript.Shell") Set objShortCut = objShell.CreateShortcut(targetPath & targetFile) objShortCut.TargetPath = sourcePath & sourceFile objShortCut.WorkingDirectory = sourcePath objShortCut.Save Set objShortCut = Nothing Set objShell = Nothing
【バッチ】管理者権限で外部アプリケーションを実行する
Administratorユーザーでアプリケーションの実行を行う。
runas /noprofile /user:Administrator "cmd.exe"
【バッチ】Administratorsグループの所属しているか確認する
net user コマンドを使って、現在のユーザーがAdministrators グループに所属しているかを確認する。
net user %USERNAME% | findstr "Administrators"
【バッチ】管理者権限があるかどうか確認する
openfiles コマンドが管理者権限を必要とすることを利用して、管理者権限があるかどうかを確認することができる。
openfiles > NUL 2>&1 if %ERRORLEVEL% EQU 0 goto Main echo 管理者権限で実行してください。 pause exit
【TortoiseSVN】リポジトリの統合方法
いっつも忘れるので備忘録を。
-- 旧リポジトリからすべてダンプエクスポート svnadmin dump D:\oldrepos > D:\oldrepos.dump -- newreposにnewdirディレクトリを作成。 -- 新リポジトリのnewdirディレクトリ配下にダンプをインポート svnadmin load D:\newrepos --parent-dir newdir < D:\oldpres.dump
oldpres
├ branches
├ tags
└trunk
だった時、
newrepos
└ newdir
├ branches
├ tags
└ trunk
になる。
例えば、ユーザーのプロジェクト単位にリポジトリが存在していて、それを統合し、ユーザー単位にリポジトリをしたい時、有効だと思う。
旧リポジトリから特定のディレクトリのみ、新リポジトリに統合させたい場合は以下のようにする。
-- 旧リポジトリからtrunkのみダンプエクスポート svnadmin dump D:\oldrepos | svndumpfilter include /trunk > D:\oldrepos.dump -- newreposにnewdirディレクトリを作成。 -- 新リポジトリのnewdirディレクトリ配下にダンプをインポート svnadmin load D:\newrepos --parent-dir newdir < D:\oldrepos.dump
svndumfilter include は、半角スペースで区切ることで複数ディレクトリを同時に指定可能。