quilililaの日記: ucrtbased.dllがないと言って怒られる 5
日記 by
quililila
VS2015 expressでビルドして実行しようとしたら、ucrtbased.dllがないと言って動かない事象が発生。
別のPCでは動いてるのになぜこっちではダメなのか。
確認したらなぜかSystem32にucrtbased.dllがないんだよなぁ。ucrtbase.dllの方は入ってるのに。
Google先生に聞いてみたけど、再インストールせいやぐらいしか見つからないので大変困ってます。
copy&renameではどうか (スコア:0)
やったことはないけど*d.dllはdebugビルド向けの情報が入ってるだけだし、公開メソッド名に差はないはず。
Re:copy&renameではどうか (スコア:1)
たまに違う関数(MFCだったっけ?)もないわけじゃなかったような...
M-FalconSky (暑いか寒い)
Re: (スコア:0)
です。
メモリレイアウトも異なる事が有るので、リリース向けのリネームは絶対やめましょう。
# あと、デバッグDLLは配布禁止なのでリリースビルドするか、VSを入れるのが一番正しい解法。
Re:copy&renameではどうか (スコア:1)
なんか話がかみ合ってないと思ったら、大本のわたしの文章がいまいちですね。申し訳ない。
ビルドしたPCそのもの、つまりVS2015が入っているPCで実行できなかったということです。
ビルドしてデバッグ実行しようとしたらucrtbased.dllがないと怒られて困っているわけです。
より正確には、別のPCでデバッグビルドしたライブラリを持ってきて、あるPCで残りのソースと
合わせてビルドしたら動かなかったという感じです。
動かすだけなら他のPCからucrtbased.dllをコピーしてくればいいのですが、
原因を確認しておかないと更に他のPCに展開できないというあたりが一番困っているところです。
Visual Studio入れる (スコア:0)
もしくはReleaseビルドする。