一人情シスのつぶやき

名古屋の中小企業で一人情シスをしている作者が、日々の業務で思うことをつぶやきます。

WPFのMVVMについて考える

最近、Windows FormをやめてWPFのプログラムを書き始めている。 WPFは正直必要となる知識レベルが高く難しいというイメージで手が付けにくかった。今もそうだが。 何が難しいかといえば、MVVMの考え方をどこまで徹底するかに尽きるのではないかと思う。 MVVM…

ClosedXMLによるExcel編集がVirusBusterに強制終了させられる

ClosedXMLで、ファイルサーバの雛形ファイルをもとに編集して出力するということをよく行います。 この際、ClosedXMLの保存先がファイルサーバだと、当社のVirus Buster Business SecurityにUnauthorized Encryptionと言われて 強制終了させられることがあり…

うっかりmasterリポジトリでcommit

Git

git管理していて、ローカルリポジトリでブランチ切り忘れてmasterブランチで作業、ローカルcommitまでして気付いた。 このままpushしても、当然リモートのmasterブランチにダイレクトにpushはできず、弾かれる。 PRも出せない、と思っていたが。 pushでは、…

ClosedXMLでWindows7だけレイアウトが崩れる

アホな話です。 ClosedXMLで、一部コードでうっかり以下のようなコード書いてました。 using (IXLWorkbook targetBook = new XLWorkbook(filePath)) { using (IXLWorksheet targetSheet = targetBook.Worksheet(1)) { } targetBook.Save(); } usingの入れ子…

今日のクソVBAコード

stDocName = ChrW(xx) & ChrW(yy) & ChrW(zz) & ChrW(abc) & ChrW(def) & ChrW(ghi) & ChrW(jkl) & ChrW(mno) & ChrW(pqr) & ChrW(stu) DoCmd.OpenReport stDocName, acPreview ChrWの引数は実際にはコードが入る。 式の右辺をイミディエイトウィンドウに入…

CIの導入について検討

一人で開発していても、テストやデプロイにミスが出る可能性はある。 CIの導入を検討した。 結論としては、CI用途のサーバーを別途導入することはしない。現在主に開発しているC#プロジェクトでは、CIにもWindowsが必要となる。ライセンス費用が必要だし、Do…

Docker Container 起動失敗

Docker Hostのスタートアップサービスにて、Docker ContainerをBuild, Upするスクリプトを実行しているのですが、以下のようなエラーが大量に発生してUpしていませんでした。 8月 26 03:07:44 sever-name dockerd-current[864]: time="2018-08-26T03:07:44.6…

CentOS7のDocker構築ではまったこと

storage driverがdevice mapperの場合のディスク容量 device mapperの場合は、既定のディスク容量が10GBほどとなる。Oracle DatabaseのDockerコンテナをbuildするとこける。 storage driverを最初からoverlay2 にするための方法 インストール時にデバイスタ…

箱入り娘のプログラムを書いて思う

実家に帰った際に箱入り娘のパズルがあったのでやっていた。 箱入り娘 (パズル) - Wikipedia 全然解けなかったが、プログラムで力技で解きたいと思い、やってみた結論として、解けずに終わった。Pythonで再帰関数で解こうとして、再帰呼び出しの上限に引っか…

Excelで「このワークシート内にある1つ以上の式の参照に問題が見つかりました」

Excelで解決がとてもめんどくさいエラー。 このワークシート内にある1つ以上の式の参照に問題がみつかりました。数式内のセル参照、範囲名、定義名、および他のブックへのリンクがすべて正しいことをご確認ください。 Excel 2013で発生し、どう考えても参照…

64bit OSでのレジストリ操作時の注意事項

tack41tu.hatenablog.com でClickOnceアプリをインストールする際にレジストリを編集する必要がある事を書いた。 レジストリエディタで編集するのは面倒だし運用も大変なので、レジストリを編集するアプリを作成した。 How to: Configure the ClickOnce Trus…

Microsoft Report使用時のビルド時の警告

Visual Studio 2017にてMicrosoft Reportを使用するために、Nugetで[Microsoft Rdlc Report Designer for Visual Studio]をインストールすると、ビルド時に「同じ依存アセンブリの異なるバージョン間での競合が見つかりました。」と警告が表示される。実行自…

ClickOnceでハマる

C#で開発したクライアントアプリケーションをClickOnceで配布する際にハマった2点 Windows10へのインストール イントラのファイルサーバに置いてある証明書が設定されていないClickOnceをWindows 10で実行すると、「コンピューターにセキュリティ上の問題を…

アジャイル開発手法の適用を考える

最近、アジャイル開発手法に関するセミナーや勉強会に参加している。 同開発手法が既存の手法と比較して良い面を多数含んでいることは間違いないし、勉強会や記事などでの導入事例の多さがそれを物語っている。特にベンチャーであればアジャイル以外の手法は…

実行順序に依存する複数LINQ実行時の遅延評価による副作用

例えば、LINQ1にて元データよりデータを抽出し、これをデータセット1とする。 次に、LINQ2にて、元データからデータセット1を除いたデータセットに対して抽出し、これをデータセット2とする。 これをLINQ3にて、元データからデータセット1とデータセット2を…

C#でExcelのバージョンに依存しないCOM経由での操作

C#での社内プログラムでExcelを操作する際、大部分はClosedXMLを利用しているのだが、ActiveXを使用しているなどでうまく動作しない場合にはCOM経由で操作している。 Visual Studioで参照ツリーにExcelのCOM参照を追加するのだが、その時点でPCにインストー…

Windows 2016でプログラムが起動しない

当社で利用している手形管理のシステムにて、辞書の更新をしようとしたところ、なぜかexeをクリックしても起動しない症状が発生した。 イベントログにて、以下のような内容が出力されている ProviderName : Microsoft-Windows-Immersive-Shell Id : 5973 Mes…

thinクライアントとして使える古いPCの限界

手元に、使わなくなったノートPCが2台あったため、Windowsにリモート接続するthinクライアントとして利用してみた。 1台はメモリ512MB, もう一台は768MBでPAE非対応というところからスペックはお察し... Linuxを探したのだが、2018/5現在、PAE非対応という時…

GitBookでフッターを変更する方法、目次にページ数を記載する方法がわからない

最近、マニュアル等を単体ではmarkdown、複数文書をまとめる必要がある場合はGitBookで作成している。 GitBookで出版、のような記事も見受けられるため、かなりのことができるのかと思っていたのだが、タイトルにある以下の2件がどうしても解決できない フッ…

Windows 2016のWindows Update

今年に入って稼働を始めたWindows Server 2016で、原因不明の再起動が発生。 Hyper-Vホストでも発生するため、ゲストOSが未起動の状態で朝を迎え、利用者から問い合わせを受けていた。 原因はタイトルの通り。 信じられないのだが、Windows 2016ではどのよう…

特定PCから特定サーバのみホスト名でUNCアクセスできない

社内情シスには常について回る、ファイルサーバーアクセスできない問題。 私も過去何度も経験しているし、WINS, SMBなどの知識もあるのでそんなに悩むことはここのところありませんでした。 しかし、今回は様子が異なり、以下のような症状。 \\SVRNAME でア…

COM経由でのExcel操作は地獄?

VBAでExcelを操作するプログラムをC#に移行。 印刷に使用するActiveXオブジェクトを含む雛形ファイルを対象とするため、Managedな操作をするClosedXMLやNPOIではうまく動作せず、Interop.Excel経由で行った。 ClosedXML等と比較して圧倒的に動作が遅いのは当…

AccessにOleDbアクセス時、日付型のパラメータを使用する場合は型を明示する必要あり

はまった... Accessのときのみ発生。 Parameterを使う際、通常、設定した値の型からよきにはからって処理してくれるが、AccessでDateTime、特に時刻部分が設定されている場合ではエラーとなる。 yan-note.blogspot.jp

C#でのDbTransaction.Rollback

C#のTransactionにて、DbTransactionをusing句で使えば、Disposeの際にRollbackされるので、明示的なRollbackが不要とあったのだが、どうもそのように記載しているサイトのほうが少ないように見える。 MSDNで確認したところ、そうあるべきではるが、ベンダー…

iPad(9.7)でMicrosoft Remote Desktop使用時の注意事項

会社で支給されたiPad Pro 9.7inchで、Microsoft Remote Desktopを利用してWindows 10にアクセスしたところ、その後Windows10にローカルアクセスした際に英語キーボードの設定になっていた。 iPad Pro 9.7inchはSmartKeyboardを使用していて、英語キーボード…

redmineのwikiにおけるhtmlのサポート

redmineで、markdown形式を使っていると、文字に色を付ける方法がない。 セキュリティの観点から、あえてすべてのhtmlタグをフィルタしているようだ... www.redmine.org 社内で運用している場合にセキュリティを気にして表現力が落ちてもしょうがないので、…

DockerのHostの設定変更のcontainerへの反映

Host側でのresolv.confを変更したのだが、containerには、docker-compose restartやstop -> startでは反映されない。 一度downしてからupする必要がある。

AccessでのYes/No型を外部結合してGroupByすると「カレントレコードがありません」

タイトルの通り。 Accessで、OLEDB経由でもAccessで直接クエリをたたいても「カレントレコードがありません」と表示されるエラーに遭遇し、SQLを切り分けたところ、Yes/No型のフィールドが原因と判明。 ググってみると、Yes/No型を外部結合してGroupByすると…

RTX1200でL2TP,IPSECによるVPN接続

RTX1200でL2TP,IPSECによるVPN接続を行った。 iOS11(iPhone 7, iPad Pro 1st)では問題なく接続できるのだが、Android, Windows, Linux(Ubuntu)はことごとくダメだった。Windowsはそもそも保証対象外と明記されているらしいのだが、iOSがつながるのならAndroi…

iPhoneのすばらしさに気づく(いまさら)

今日は有給をとって近くをドライブした。 Web+DBでYahooマップの記事があったので、ナビを使ってみようと思ったのだ。 そもそもにしてYahooマップとYahooナビは別アプリなのだが... 手持ちのNexus5Xで試した。アプリの機能としては問題ないと思うのだが... …