X



Visual Studio 2017 Part4
レス数が1000を超えています。これ以上書き込みはできません。
0917デフォルトの名無しさん (ワッチョイ 9f79-KDgo)
垢版 |
2018/02/18(日) 18:55:47.66ID:7yH0ADQj0
Update で更新された詳細って、どこかのページに出てるだろうか?
0919デフォルトの名無しさん (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/18(日) 22:37:47.29ID:1j14+SMC0
VS2017、C/C++でのWindowsXP向けビルドについて質問です。
VS2017をインストールしている環境はWindows10です。

新しいプロジェクト → Windows コンソールアプリケーション
という手順でプロジェクトを作成し、以下のようなプログラムを組みます。

#include "stdafx.h"
#include <stdlib.h>

int main()
{
  int  month, day = -100, num;

  num = sscanf_s("1月1日", "%d月%d日", &month, &day);
  printf("month=%d, day=%d, num=%d\n", month, day, num);
  system("pause");
  return 0;
}

このままビルドして実行すると表示されるのは当然の如く、
 month=1, day=1, num=2
ですが、このプロジェクトの設定はデフォルトでWin10向け設定なので以下のように変更します。
0920デフォルトの名無しさん (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/18(日) 22:38:15.33ID:1j14+SMC0
構成プロパティ → 全般
  → Windows SDK バージョン
    10.0.16299.0 → 7.0
  → プラットフォームツールセット
    Visual Studio 2017 (v141) → Visual Studio 2017 - Windows XP (v141_xp)

また、さらに最終的に配布段階でライブラリ導入の手間を省くため、以下のようにもします。

構成プロパティ → C/C++ → コード生成
  → ランタイムライブラリ
    マルチスレッド デバッグ (/MTd) → マルチスレッド デバッグ DLL (/MDd)
    (ここではデバッグプロジェクトから引用していますが、リリースプロジェクトでは当然デバッグなしのを使います)

この設定でビルドして実行した場合、以下の結果になります。
 month=1, day=-100, num=1

VS2013を元々使っていたので、こちらを利用して
  → プラットフォームツールセット
    Visual Studio 2017 (v141) → Visual Studio 2013 - Windows XP (v120_xp)

とした場合は問題の無い実行結果となります。

これは単純にVS2017のバグと思っていいのでしょうか?
0921デフォルトの名無しさん (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/18(日) 22:41:53.50ID:1j14+SMC0
一つ間違えました。
使うライブラリーは逆でした。

構成プロパティ → C/C++ → コード生成
  → ランタイムライブラリ
debug  マルチスレッド デバッグ DLL (/MDd) → マルチスレッド デバッグ (/MTd)
release マルチスレッド DLL (/MD) → マルチスレッド デバッグ (/MT)

ようするにVC DLLを必要とせずに動くような設定です。

よろしくお願いします。
0923デフォルトの名無しさん (アウアウエー Sadf-kYbg)
垢版 |
2018/02/19(月) 02:43:36.81ID:9ZgXpTuwa
>これは単純にVS2017のバグと思っていいのでしょうか?

いいえ
0930919 (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/19(月) 16:17:56.52ID:EWYbzQ9X0
どうもすみません。
バグとは書きましたが、コンパイラやライブラリに限定したつもりはなく、
単にVS2017というパッケージに対する不具合の指摘のつもりでした。
バグという言葉がソフトウェアプログラムソースにしか使われないものであれば
その言葉を撤回いたします。

ロケール云々は自分でも気になっていましたが、事前にsetlocaleを実行しても結果は変わりませんでした。
setlocale(LC_ALL, "JPN");

>>922さんの通り、swscanf_s()だと問題はないようです。

マルチバイト文字を使っているシステムは、早々にワイド文字を使うよう切り替え修正しないといけないのでしょうかね。
というかXPを切り捨てることが先決か・・・

とりあえず当面は Visual Studio 2013 - Windows XP (v120_xp) で凌ぎます。
どうもありがとうございました。
0931919 (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/19(月) 16:28:34.98ID:EWYbzQ9X0
>>929
こんなこともあったのですね。
問い合わせしたことないので窓口がよく分かりませんが、VS2017→ヘルプ→フィードバックの送信
でいいのかな・・日本語でいいのだろうか。。
どうもありがとうございます。
0932デフォルトの名無しさん (ワッチョイ 9f23-uFTR)
垢版 |
2018/02/19(月) 18:21:22.46ID:CAt76fn40
VS2015 で問題ない組み合わせ
(sdk8.1、ツールセット v140_xp、ランタイムはマルチスレッドデバッグ) でも
VS2017 でビルドすると問題起きるね

せっかくプラットフォームツールセットが分離されててもあんまり意味ないなこれ
0936919 (ワッチョイ 37e9-HN+l)
垢版 |
2018/02/20(火) 16:53:23.00ID:n5idnSqJ0
>>932
毎度確認ありがとうございます。
設定が細かくなって色々調べながら設定してきましたが、
こんなことだと気を遣うだけ損な感じですね・・

>>934
非常に由々しき問題ですね。
VS2013に戻そうと思います。

こんな対応だと、MBCSの対応を切ると宣言してくれた方がすっきりしますね。
0941デフォルトの名無しさん (ワッチョイ f78a-T9Ct)
垢版 |
2018/02/21(水) 07:44:59.15ID:l7ia60hg0
Release Date: February 20, 2018 - Visual Studio 2017 version 15.5.7
What's New in this Release
Team Explorer support for TLSv1.2
We have updated the Git and the Git Credential Manager components that ship in Visual Studio.
The optional Git for Windows component has also been updated.
This update allows Git to connect to services that have deprecated support for TLSv1 and TLSv1.1 in favor of TLSv1.2.
Issues Fixed in this Release
These are the customer-reported issues addressed in this release:
Projects targeting .NET Core 2.1 or newer are not supported by Visual Studio 2017 version 15.5.
Fixed issue where installation of the SDK for .NET Core 2.1 or newer would cause the option to create ASP.NET Core 2.0 Web applications to disappear.
0949デフォルトの名無しさん (ワッチョイ 178a-h07R)
垢版 |
2018/02/21(水) 19:34:09.78ID:N7GlfDUh0
>>948
下手に古い環境残したままアプグレとかするから問題を起こすんだよ
クリーンインストールだとそうそう問題なんか起きない
VSを使っていればOSの再インストールなんか日常茶飯事だし、むしろ最新のVSを古いWindowsに導入している方が互換性問題を引き起こす可能性が高い
0955デフォルトの名無しさん (ワッチョイ 37d3-T3WU)
垢版 |
2018/02/21(水) 22:28:02.66ID:iqWhYJMR0
SurfaceはPro2,4,2017と使ってるけどWin10の機能更新が原因のトラブルは
Pro4とCU(AUだっけ)の組み合わせでCPUのクロックスケーリングが無効になる症状だけだな
(Pro4固有の不具合でたぶん再現性100%、対処法はあったけど一ヶ月以上放置されてた)
スリープドレインやスリープ死など愉快なSurface固有のトラブルもあるけど
そっちは機能更新とは別のドライバやファームウェアの持病

VSとSurfaceの組み合わせで固有の問題が気付いたことないけどなんか具体的にあったっけ?
0957943 (ワッチョイ c667-x4Or)
垢版 |
2018/02/22(木) 14:25:53.32ID:qwLRFwLN0
いつの間にかwindows updateの話になっているが
俺が言ってたのはそれじゃない
RuntimeBroker.exeだとかbackgroundTaskHost.exeだとかいう
マルウエアがまっさらのOSに始めから入っているという話や
ダブルクリックすると関連付けを変更するかと聞いてくることだ
0960デフォルトの名無しさん (ワッチョイ f58a-bhM0)
垢版 |
2018/02/22(木) 16:33:46.92ID:4xX/RT8p0
>>944
グループポリシーで自動アップデートオフにしてもそれだけではアップデートのダウンロード
は勝手にするみたいだから注意
旅行先でスマホのテザリングでネットにつなげていてひどい目に合った
0963デフォルトの名無しさん (ワッチョイ f58a-bhM0)
垢版 |
2018/02/22(木) 18:16:46.65ID:4xX/RT8p0
>>961
グループポリシーの「自動更新を更新する」で「無効」にしてるが?
「無効」にすると「自動ダウンロードしインストールを通知」なんて選択は出来ないんだが?
とにかくWin10はこの辺の設定のハードル高すぎるね
0964デフォルトの名無しさん (ワッチョイ f58a-bhM0)
垢版 |
2018/02/22(木) 18:28:03.49ID:4xX/RT8p0
>>962
グループポリシーで自動更新無効にしても従量課金接続モードを設定しなけりゃいけないとか罠すぎる
確かに窓板の話題だろうけど開発用マシンで勝手なことされるのは非常に困るんでね
0970デフォルトの名無しさん (ワッチョイ 1549-x4Or)
垢版 |
2018/02/23(金) 17:05:48.65ID:lIelkvwO0
突然暴れ出すexeの中にはexplorer.exeまである
どんな悪事も「システムに必須のexe」という聖域でやれば
ほとんどのユーザーは手出しができない

ここまでされちゃおしまいだろ
だからクソOSつってんだよ
0975デフォルトの名無しさん (ワッチョイ b7b3-x4Or)
垢版 |
2018/02/24(土) 09:43:03.28ID:pqM6ijVV0
https://blogs.msdn.microsoft.com/vcblog/2017/05/10/c17-features-in-vs-2017-3/
上のサイトを見て、構造化束縛(structured bindings)が
VS2017ですでに使えるようになっていると思ったのですが、
私の環境では使えないです。(VS2017 Version 15.5.5)

使える方いますか?
なにかをincludeすれば使える?
そもそも使えるなんて書いてない?

教えて頂けると幸いです。
0976デフォルトの名無しさん (ワッチョイ d48a-Dlns)
垢版 |
2018/02/24(土) 10:08:19.14ID:IUR9VVh20
コンパイラを最新の状態にすることと
フラグスイッチが/std:c++14になっているか
チェックする事

C++プロジェクトを新規作成した上で
プロジェクトを右クリック→プロパティ→C/C++→言語→C++言語標準の中から
ISO C++標準 C++14h標準(/std:C++14)
ISO C++ Standard C++17(/std:C++17)
ISO C++ 標準の最終草案 (/std:c++latest)
の何れかを選択し新規作成したプロジェクトごとに上記の設定しなおす
自分が使用したい環境で選択してみてください
あとリリース版とプレビュー版ではサポート
されている内容が違うので注意が必要
最新のを使うのであればプレビュ版を使用してみて

https://blogs.msdn.microsoft.com/vcblog/2016/06/07/standards-version-switches-in-the-compiler/
0998デフォルトの名無しさん (ワッチョイ dfe0-m1UI)
垢版 |
2018/03/06(火) 18:56:48.58ID:g3+sDpC00
都会の色に染まったんだろうなぁ
1000デフォルトの名無しさん (アウウィフ FF2b-wl/W)
垢版 |
2018/03/06(火) 19:11:22.02ID:03FKlPoEF
おちゅん
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 128日 7時間 28分 46秒
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況