Visual Studio 2019 Part5

■ このスレッドは過去ログ倉庫に格納されています
2020/08/18(火) 12:43:43.24ID:Kg5PamBJa
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512

Visual Studio 2019 の新機能
https://docs.microsoft.com/ja-jp/visualstudio/ide/whats-new-visual-studio-2019?view=vs-2019

The Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/

リリースノート
https://docs.microsoft.com/en-us/visualstudio/releases/2019/release-notes#

過去スレ
Visual Studio 2019
https://mevius.5ch.net/test/read.cgi/tech/1548765663/
Visual Studio 2019 Part2
https://mevius.5ch.net/test/read.cgi/tech/1562077164/
Visual Studio 2019 Part3
https://mevius.5ch.net/test/read.cgi/tech/1569978087/

※前スレ
Visual Studio 2019 Part4
https://mevius.5ch.net/test/read.cgi/tech/1585715794/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/01/19(火) 12:09:33.59ID:sY2ojwRf0
個人向けには無償Community
組織向けにはVLライセンス販売のサブスクリプション
MSにとってメジャーバージョンアップによる収益へのメリットは殆ど無いよ
2021/01/19(火) 12:12:54.42ID:fA2/wDHz0
>>626
2021/01/19(火) 23:18:01.74ID:KFDUsh4Kd
え?

サブスクリプションの期間過ぎても
期間内リリースされたメジャーバージョンの製品は
使い続けることできるから
新しいメジャーバージョン出さないと
サブスクリプション更新してもらえなくなっちゃうよ?

それかほかの会社みたいに期限過ぎると
マイナーバージョンの更新すら使えなくするって手もあるけど
2021/01/19(火) 23:23:04.22ID:WfjjyMl9M
それをメジャーバージョンアップで金取るという風に変換するのは馬鹿でしょ
2021/01/19(火) 23:35:49.09ID:sY2ojwRf0
考え方が逆
バージョンアップのためにライセンス更新するのではなくて、ライセンス更新しているのでバージョンアップの意義が薄いんだよ
バージョンアップに関係なくライセンス更新を続けるように誘導した戦略が秀逸
開発目的であればあらゆる製品のプロダクトキーが利用出来る開発者ライセンスのメリットが大きい
2021/01/20(水) 00:37:26.24ID:ZEvuZxEZ0
そもそも開発者ライセンスの収入なんて今のAzureメインの時代では微々たるもんじゃないのかな…
VSくらい全無償でWindowsとAzureエコシステム拡充図るほうがいいような気もするけど
2021/01/20(水) 00:44:48.65ID:BSAiRU3A0
微々たるものとは言っても2年更新で約40万円
個人開発者にとっては結構ツライ
2021/01/20(水) 01:03:58.96ID:0cOf70Zo0
個人で有償版使うってどんなケース?
2021/01/20(水) 01:04:55.43ID:qnHK/HY00
1000ドル以上の売上があった場合
636デフォルトの名無しさん (ワッチョイ 026a-sTIO)
垢版 |
2021/01/20(水) 02:05:52.01ID:zS3tV+NK0
会社ではサブスク
家ではコミュ
バージョンアップと支払い関係ない
2021/01/20(水) 02:46:17.59ID:SQRgVewR0
>>634
フリーランスが大企業の案件やるとき
2021/01/20(水) 06:10:35.32ID:6vEnElCe0
>>633
Enterprise?
まあ必要経費だし大変でしょうが頑張ってね
2021/01/20(水) 08:01:00.57ID:iqNbzidXd
>>630
何で?
新しいメジャーバージョンほしければ
サブスクリプション更新するか単体で買い直すしかないんだけど
2021/01/20(水) 08:50:45.97ID:aeRlO4JtM
https://www.licenseonline.jp/lsatstore/dts/maker_microsoft.html
https://npress.synnexinfotec.jp/promotions/3
2021/01/20(水) 08:58:38.04ID:46Q3lf0zd
プロじゃないから久しく買ってないけど
昔はProでもサブスクライバー特典ついて7万ぐらいじゃなかったっけ
2021/01/20(水) 10:17:06.95ID:sOzWFlEJ0
10万円の売上があったら、2年で、40万円も払うの?

とんでもない !!
2021/01/20(水) 10:37:48.32ID:1qrAnZn2M
Pro
新規(2年) 約15万円
更新(2年) 約13万円

Enterprise
新規(2年) 約110万円
更新(2年) 約40万円
2021/01/20(水) 10:52:40.62ID:BSAiRU3A0
なんだかんだ言ってもライセンス更新を続けている限りは比較的に割安で維持できる
契約切れになると新規扱いになって一気に価格が跳ね上がる
Enterpriseは新規には厳しい価格設定
2021/01/20(水) 10:55:12.39ID:iqNbzidXd
>>643
6月に更新したときは
12.3万弱で 10%ポイント還元だったな
2021/01/20(水) 11:13:24.94ID:BSAiRU3A0
去年12月に更新したけど業者と交渉して税込みでギリギリ40万以内に収まった
交渉で価格競合させた業者は42万弱だったな
2021/01/20(水) 12:21:55.94ID:w8rk96cud
>>643
結構かかるんだ〜
うちはPro買い切り
2021/01/20(水) 12:55:08.20ID:SQRgVewR0
Windows使い放題のライセンスは開発に必要だからMSDNは入っとかないと不便だね
2021/01/20(水) 13:06:24.05ID:+YqjsSug0
VS2019をインスコしてpythonのプログラムづくりを始めたんだが
F5で実行した後にプログラム終了後
「続行するには何かキーを押してください」て終わるんだけど、
この「続行するには何かキーを押してください」を出さない方法てあるの?
ググっても「続行するには何かキーを押してください」を出す方法とかDOS窓を残す方法しか出てこないんだが、
こんなDOS窓が残ってだれもうざいと思わないの?
2021/01/20(水) 13:41:11.17ID:4M/f/uk00
DOS窓で動くプログラムなんだから基本出力がDOS窓
これが消えたら出力結果が分からんでしょ

イヤならWINで動くプログラムにすればいい
2021/01/20(水) 14:06:08.68ID:sOzWFlEJ0
Python は、Windows Home でも使える、WSL2, Docker で、

VSCode に、Microsoft の拡張機能を入れるのじゃないの?
2021/01/20(水) 15:37:44.34ID:/efS7J9l0
>>649
例えば、ツール、外部ツールで、好きなエディタを登録しておくと
実行できるようになるが、それを使って、アプリを実行するBATファイルを
起動するか、アプリを直接コマンドのように実行すれば、そのメッセージは
出てこない。
ちなみに、BATファイルの場合、最後にpause文を書くとそのメッセージが
出てくる。
2021/01/21(木) 13:09:03.04ID:krexEaXy0
値は入力してるけど使ってない変数って一括で出す方法ってないですか?
2021/01/21(木) 13:51:18.62ID:ciZs5//GM
一括というのは無理っぽいけどIntellisenceの機能かIntelliCode の機能か分からないけど波線で警告表示はされるのでしらみつぶしするしかないのでは?
2021/01/21(木) 14:15:34.64ID:krexEaXy0
>>654
それが波線が出なくなっちゃったみたいなんですけど
そんな設定あります?
2021/01/22(金) 04:16:43.52ID:OxfzbQmRa
値入力したら使ってるんじゃね
2021/01/22(金) 06:50:13.37ID:vo2BGFnD0
>>655
エディタの波線だけでなくてヒント表示やエラー一覧の警告も表示されないの?
https://i.imgur.com/jcl1TQJ.png
658デフォルトの名無しさん (エムゾネ FF7f-rvE3)
垢版 |
2021/01/22(金) 12:33:40.93ID:pJ+Dy7HCF
>値入力したら使ってるんじゃね

1.宣言部分をコメントにしたら使ってたら警告出るだろ
2.全部constにしたら再代入してるかしてないかは判る
2021/01/22(金) 13:24:12.30ID:hRbCIOLy0
値に代入されてると警告出ないみたいです
2021/01/22(金) 13:25:29.51ID:hRbCIOLy0
後、それを回避しても取得した値をログ出力しているので本処理で使用しているかどうかはやはり人力になりそうです
2021/01/22(金) 13:37:44.73ID:vo2BGFnD0
ログ出力しているのであれば、その出力関数で変数の値を利用(参照)しているのでIntelliSenseは未使用の変数と判断できない
全く何処からも参照されない変数であれば警告表示される
2021/01/22(金) 13:51:56.55ID:EZ8YpMi2a
C++ならコンパイラの警告レベルを4にすれば、一度代入したけど参照してない変数は、コンパイル時の警告として一括で表示はできるね
2021/01/22(金) 22:35:37.27ID:WXxL8Q/50
そもそもそれ潰す工数に対するリターンがね
気持ち悪いのはわかるが
2021/01/23(土) 00:00:26.63ID:JcAhMBxy0
そもそも警告レベル最大にしとくのがデフォだと思ってた
2021/01/23(土) 09:06:21.36ID:LPDMRZtK0
定義しといて使ってないのはともかく
代入しといて使ってないのはポカミスの疑いがある
2021/01/23(土) 09:12:11.03ID:XHKedqhC0
いや、ファイルから値読んでるんだけど
その値を使用しなくなっちゃうときがあるのよ
2021/01/23(土) 09:37:11.09ID:QtjuJLmO0
>>653
自分でプラグイン作る
2021/01/23(土) 10:19:35.49ID:LPDMRZtK0
ファイルから読み取るのに代入すんのか?
2021/01/23(土) 10:25:49.95ID:XHKedqhC0
>>668
ファイルから取得したデータの塊からローカル変数に一旦移す必要があるのよ
まあ、これがすべての元凶なんだけど
2021/01/23(土) 10:29:34.51ID:XHKedqhC0
あ、わかった
ローカル変数に移すとき
Dictionary<int id,object value>に移せば未使用問題は解決するかな?
2021/01/23(土) 12:45:05.97ID:4VL29Q1J0
>>664
同意なんだけどマイクロソフトが提供しているヘッダーファイルで警告出るのはなんとかして欲しい
2021/01/23(土) 15:13:08.33ID:E2XTqnevd
>>665
いろんな仕組みを使ってると
代入したけど使わない
なんてザラにあるんだよね

コンパイラの警告は最低限にして
ちゃんとコードを確認するときは
ちゃんとした静的解析ツールを使う

使い捨てコードならとりあえず動けば良いし
2021/01/23(土) 16:31:30.66ID:LPDMRZtK0
>>672
上から目線したそうだが
厚みが全く感じられないな
どんな分野にいたって言うんだ?
2021/01/23(土) 17:15:18.87ID:5Na5U87Z0
#if とか #ifdef とかでコンパイル時に分けて
プログラミングしてたら気付いたら使ってないってのはあるな
2021/01/23(土) 17:36:27.92ID:QtjuJLmO0
条件でfileから読み取ったものを格納したいとき
if の中で新規に変数宣言しちゃうと
そこ抜けた後使えないから
最初に宣言しちゃうと条件に合わないときは unusedになっちゃうんじゃない

たぶん
2021/01/23(土) 18:21:42.54ID:4VL29Q1J0
>>672
どんな仕組みを使うとザラにあるって言う状況になるんだ?
2021/01/23(土) 18:25:40.71ID:4VL29Q1J0
>>675
int a = ...; // ファイルから読み出し
if(...){
… = a;
}
みたいなコードを言ってるのか?
この場合はunusedにならないよ
678デフォルトの名無しさん (ワッチョイ 5f43-XRRf)
垢版 |
2021/01/23(土) 20:39:15.41ID:f2Vc7d500
int len;

if ( os.lang = japan ) {
len = new String ( file.bytes, “iso2022jp” ).length();
)

上司「やっぱutf8でながさ気にしないやつな」

lenに代入をコメントアウト
とかでは?
2021/01/23(土) 21:01:22.83ID:4VL29Q1J0
>>678
ああすまん、そっちだったな
ただそれunusedじゃなくてuninitializedでしょ
680デフォルトの名無しさん (ワッチョイ 275f-rvE3)
垢版 |
2021/01/24(日) 11:20:00.29ID:wSlEv8S70
os.lang = japan
2021/01/26(火) 12:25:03.22ID:LbY2oecZ0
あのグチャグチャなwindows.hとようやくオサラバできる?
https://forest.watch.impress.co.jp/docs/news/1301910.html
2021/01/26(火) 12:50:09.76ID:p+srJuugp
年末リリースかよー
C#の最初からやってりゃよかったのに
2021/01/26(火) 14:15:10.33ID:wf18ET4H0
なんかwinformsのリソースエディタおかしくね?
編集時の画面と実行時の画面も違うし
なんかsizeプロパティに値を入れたときのリソースエディタの画面のサイズなんかチガクネ?
2021/01/26(火) 14:44:01.27ID:knzRnZbz0
ディスプレイの設定で表示スケールが100%になってないとか?
2021/01/26(火) 15:53:33.74ID:wf18ET4H0
>>684
100%でもなる
プロパティのスクロールバーも変な位置に出るし
2021/01/26(火) 16:03:45.15ID:vg4ieDj5d
スクショ貼ってみて
もしくは再現するプロジェクトどっかに上げて
2021/01/26(火) 16:05:54.55ID:wf18ET4H0
ユーザコントロールを新規で追加してSizeプロパティ変更すると100%起きるのに
みんなはそうならないのか?
2021/01/26(火) 16:16:40.84ID:rXsHTqKLd
高DPIかな?
2021/01/26(火) 16:23:51.44ID:wf18ET4H0
667,248

とか
690デフォルトの名無しさん (ワッチョイ 2790-8PYP)
垢版 |
2021/01/26(火) 22:40:57.98ID:64uDtU+H0
部分的な書き方になっちゃってすまない。。
ActiveXObject("Microsoft.XMLDOM") がedgeでは動作しないみたいだ。

ネットで調べると、以下のように書くと、
解決しそうなこと書いてあった。

これなら、IEもChromeもedge も動作するかな?
if(ActiveXObject) {
domObject = new ActiveXObject("Microsoft.XMLDOM");
} else {
domObject = document.implementation.createDocument(...);
}
691デフォルトの名無しさん (ワッチョイ 2790-8PYP)
垢版 |
2021/01/26(火) 22:42:34.78ID:64uDtU+H0
>>690

.Net の話。。
文章へたくそ、ゴメンなさい。。
2021/01/31(日) 14:55:03.21ID:QuI6Fit80
C#で作ったアプリケーションをビルドしました。

実行ファイルが作成されたbin>releaseのフォルダに、実行ファイルがあると正常に実行できるのですが、
他のフォルダにコピーすると実行できない(ダブルクリックしても反応しない)
状態です。

なぜなんでしょう?
2021/01/31(日) 15:53:02.38ID:2WBeknRq0
>>692
.dllとかもいるんとちゃうか?
2021/02/02(火) 00:37:25.08ID:eKjK+90p0
そんなときにILMerge
2021/02/02(火) 05:31:40.82ID:K9rz1pjI0
>>692
そういう動作をするように作った
管理者権限
セキュリティーソフト
その他なんか見落としてる
2021/02/02(火) 10:32:20.43ID:ecX0Yfuo0
>>692はマルチポストしててもう解決してる
2021/02/02(火) 10:56:56.59ID:n0oY7m3v0
>>696
安心した
2021/02/02(火) 20:02:51.13ID:Fo96HejD0
いい奴かよ
2021/02/03(水) 07:48:39.24ID:JpHt3wBCM
>>696
良かった良かった
2021/02/03(水) 19:39:24.98ID:FJQE1f2p0
MSVCに限った話もここで良いですか?Community 2019 Version 16.8.4を使用しています
https://i.imgur.com/qMgkY59.png

URLのスクリーンショットは新規コンソールアプリで上記インラインアセンブリだけを挿入し
cppソースからxorとincにブレークポイント、xorでブレーク&再開後・再びブレークした物です
しかし逆アセンブリを見るとcppソースと異なり、incではなく"Hallo World\n"まで進んでいます

どうもインラインアセンブリ内のラベルが原因のようで、同行にしてもセミコロンを入れても意味はなく
行単位のズレならまだしも、バイト単位でずれて居ると見えブレーク位置によって不正な命令に変化します
Releaseも同じ症状になるのでデバッグ形式は関係ないようですが、これは環境依存の問題でしょうか?

一応Developer Communityやgithub.com/Microsoft周りをinline assembler+label+breakpoint辺りで
探ってみましたが巧く見つけられず…Visual Studio 2019自体を入れ直してみても改善しませんでした
701デフォルトの名無しさん (ワッチョイ 797c-L6Wt)
垢版 |
2021/02/04(木) 11:57:03.48ID:4/57iig+0
label: nop 入れてみたら?
2021/02/05(金) 04:58:27.99ID:32PxEni70
>>701
nopを挿入しnopにブレーク設定すればincで停まりますが、incにブレーク設定するなら結果は同じですね
その分後ろに行くだけなので命令の頭にCCが書き込まれない場合も同様。むしろおま環なのかどうかです
2021/02/05(金) 07:30:37.56ID:XbPEadHi0
ブレークポイントはインラインでなくともずれる事がある
Releaseビルドのような最適化が行われたコードは当然としてDebugビルドでも

おまかんかどうかは後で試してみるよ

アセンブラを使いたい理由はわからんけど
32bitがそろそろオワコンだし
64bitだとインラインは使えないし
インラインじゃない普通のアセンブラを使ってみたら?
2021/02/05(金) 08:05:41.23ID:32PxEni70
>>703
最適化はともかく、ご指摘のずれるというのは設定しようとした行ではなく、実際に作用するコード行へ移されるという意味ではなくてですか?
アセンブリなら命令とネイティブコードは対ですし、ましてや命令の頭以外にSBPが挿入されて不正命令化するのは不具合にしか見えないけども…

インラインアセンブラの用途は主にレガシーアプリをラップする関数スタブです。前処理や__stdcall→__fastcallにして引数増やすとか
EBP経由で前フレームを参照する事もありますし、C/C++ではテイルコールに出来ないと大分増長なネイティブコードが出来上がるので
MASMの方が端々で堅牢だと思いますが、C/C++ソースと手軽に連携する分には…という感じです。bitの点は元アプリがx86しかありません
2021/02/05(金) 08:13:56.36ID:32PxEni70
誤字脱字失礼…「前処理→前後処理」、「増長→冗長」です
2021/02/05(金) 08:22:49.40ID:XbPEadHi0
バイト単位でずれて不正命令化?
まあそれはお気の毒で

Cのコード中にアセンブラで命令を追加して
いつでも正しく動作する
って方が無茶な要求かと思います

処理的にはラッパ関数を経由するのが普通だと思うけど
何でそんなトリッキーな方法を使おうとしたの?
2021/02/05(金) 08:42:05.86ID:32PxEni70
他者のバイナリかつ元の引数だけでは飛ばす関数への処理に足りず、ローカル変数を参照せざる得ない場合とかですかね
趣味レベルの話なので是非については…という所ですが、デバッグ情報かデバッガがおかしいのか記憶にない挙動ゆえに
フォーマッタもIntelliSenseも__asmブロックには関知しませんし、x64での廃止も悪い意味でレガシーとなりましたか
2021/02/05(金) 08:50:30.85ID:32PxEni70
ああ、もちろん実際の関数スタブには__declspec(naked)付けてますよ、完全マニュアルです
2021/02/05(金) 10:52:50.21ID:w+kp50Zw0
ちょっと調べてみたけど、
2019ではソースの行番号とアドレスの対応がおかしいデバッグ情報を出力しているみたい。
2015では正しくブレークポイントを設定できる。

デバッグ時のみ古いバージョンでコンパイルするか、
__asm内でのラベルが問題なので、__asmブロックをラベルの前後で分割して、ラベルを__asm外に移動させる
というくらいしか回避策は思いつきません。
2021/02/05(金) 12:13:00.10ID:Q0mSqgAC0
OSがWindows8以降で、シーケンシャルな処理なんて出来るの?
デバッグ環境なら、途中で止まるからシーケンシャル動作可能になるだろうけど。
2021/02/05(金) 20:37:13.40ID:32PxEni70
>>709
2015情報まで、有り難うございます。この再現性でPreview抜けてくるかと訝しんでいたのですが
まぁ設定やWindows SDKが影響する道理ないですか、凡そ検証機会も失われたという事でしょうか

__asmブロックの分割…ラベルだけのCコードなら出力変わらず、後続命令なしのアライメントは可能
__asm外ならラベルも大文字小文字を区別・インデントへ悪影響なし、回避策以上に良いかもです
712デフォルトの名無しさん (ワッチョイ bfda-g7o/)
垢版 |
2021/02/06(土) 16:14:53.40ID:xYsncZSh0
2年ぶりに無償の2019起動したらサインインできず電話番号を要求された
Win7ですが電話番号を入れたら使えるようになります?
使ってる人は新しいアカウントを取ってます?
Win7はもう無理?
オフラインで動かす方法はあります?
2021/02/06(土) 16:23:33.01ID:ROiZJzWf0
>>712
電話番号なんかいらんやろ
大丈夫か?
2021/02/06(土) 16:42:56.79ID:DxNVmrefM
>>712
Microsoftアカウントのこと?
2021/02/06(土) 16:49:22.75ID:ROiZJzWf0
バージョン管理というか
ベータとして作ったものをとっときたいんだけど
gitでバージョン管理としてとっとくしかないの?

プロジェクトごとコピーとかって無理なの?
2021/02/06(土) 16:59:31.40ID:JdsD+Ic/0
ZIPに固めてOneDriveに保存でいいじゃ無い
2021/02/06(土) 17:57:47.99ID:AF/+RoMra
なんだかんだいって、結局はそれが一番最後の砦になったりすることが
まれによくあるから侮れない
2021/02/06(土) 18:00:53.24ID:ps8IV24p0
フォルダこと保存
が最強だよ
2021/02/06(土) 18:11:31.42ID:LwIa9kRI0
バージョン管理とバックアップはそもそも目的が違うしなぁ。
アーカイブがいっぱいあってもどれがなんのバージョンだっけ?ってなりかねない。
2021/02/06(土) 18:25:21.80ID:tpGSBvGQM
GitHubリポジトリにはリリースを保存しておく場所があるのでそこでいいよ
リリースが.NETパッケージならNuGetリポジトリとかでもOK
非公開だったら社内にリポジトリサーバーを構築して管理するといい
2021/02/06(土) 18:32:37.88ID:xYsncZSh0
>>714
2年ぶりに無償の2019起動したらライセンスが古くなったため更新する必要があります。インターネットに接続して(略)と出て使えません。
正しいパスワードでサインインしたらご使用のアカウントがロックされました。アカウントの解除(略)と出て電話番号を要求されます。
Microsoftアカウントのことです。
サインインも2年ぶりです。
2021/02/06(土) 18:44:27.48ID:RC+saUqk0
コールドスリープしてるような間抜けはそうそう居ないだろ
2021/02/06(土) 18:54:27.06ID:DxNVmrefM
>>721
うん、じゃあ電話番号登録すればいいんじゃないの?
2021/02/06(土) 19:09:06.95ID:a6ymKAOD0
>>721
要求というか確認だよ
アカウント作成した時に登録した番号と入力した番号で本人確認を行うだけ
入力した番号が正しければSMSでキーが送られてくるのでロック解除できる
2021/02/06(土) 22:20:43.87ID:0MPuH4rg0
アンチMSおじさんの香りがしてきた
2021/02/06(土) 23:13:09.09ID:MdWn+J3B0
>>719
ちゅうか、gitも、(差分方式と似た)増分方式なので、
差分よりはましだが、それでも基点となるファイルが壊れてしまえば
最新版以外は恐らく再現できなくなってしまうだろうから、
バックアップとしては意味無いと思われる。
ちなみに、差分方式は、直前に対しての変化を記録していくが、
増分方式は、ある基点となるファイルからの違いを記録しておくらしい。
差分方式は連鎖のどれか一箇所でも壊れればそれ以後が全て再現できなくなるが、
増分方式は、記録を開始した時点のファイルが壊れない限りは、
全損はしない。
だから、どこかの時点のバックアップがいくつかとってあれば、
全損する可能性は低いと言うことになるようだ。
よう知らんが。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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