X



Visual Studio 2010 Part21
0205デフォルトの名無しさん
垢版 |
2018/07/04(水) 22:51:42.31ID:gFgZc5FG
JMO
0207デフォルトの名無しさん
垢版 |
2018/07/07(土) 15:11:34.06ID:VFiQQxuK
clickonceの件は、開発環境の.net4.5にwindows updateの適用がされた影響で、アプリ起動時の更新チェックに使用される暗号化アルゴリズムがデフォルトでSha2になった為でした。
アプリの証明書はSha1だったので、これが原因でした。
0208デフォルトの名無しさん
垢版 |
2018/08/28(火) 14:15:24.78ID:hRN/klf2
Win7 64BIT に VS++ 2010 Express をインストールした状態で、
64BIT コンパイラを使おうと思って、DL した ISOイメージから作った
「Windows SDK for Windows 7 and .NET Framework 4」
を DVD からインストールしようとしたのですが、途中でエラーになり
インストールできませんでした。

product has reported the following error: Please refer to
xxxx\HTML\ConfigDetails.htm

みたいなエラーが出て、いろいろ試しましたが駄目でした。
0209デフォルトの名無しさん
垢版 |
2018/08/28(火) 16:00:35.99ID:6kEMX7h9
普通に入るやろ
0210デフォルトの名無しさん
垢版 |
2018/08/28(火) 16:04:06.49ID:i7XKl9XP
報告かな?w
内容からして頭の方が駄目だったんだろ
聞きたいんだったらエラー内容とかhtmの内容書けよw
0214デフォルトの名無しさん
垢版 |
2019/06/08(土) 20:18:28.44ID:u6T9OM5a
C#かVBのようなので2010は関係ないかもしれないけど
自分が作ったアプリじゃないんだけどコードを2017で起動してみたらコードにエラー箇所があるから2010以前なら問題ないかなと思ったんだ
0217デフォルトの名無しさん
垢版 |
2019/06/09(日) 11:06:31.60ID:V8qyq4Ge
>>213
腐女子スレかと思った
0220デフォルトの名無しさん
垢版 |
2021/05/29(土) 11:49:48.16ID:eCdX3xcf
VS 2019 - v16
VS 2017 - v15
VS 2015 - v14
VS 2013 - v13
VS 2010 - v12
VS 2008 - v11
VS 2005 - v10
であってます?
VS 2012 が有ったような?
VS 2015 のスレって無いんですか?
0222デフォルトの名無しさん
垢版 |
2021/05/30(日) 04:06:54.11ID:IYvvH11j
>>220
全然あってなくてワロタ
0224デフォルトの名無しさん
垢版 |
2021/05/30(日) 10:15:07.53ID:ssDmNHo+
>>221
評価します

>>222
しね

>>223
書き足すが良い
0226デフォルトの名無しさん
垢版 |
2021/07/02(金) 11:37:43.39ID:y5h8C7bb
VS2010のWEBインストールが接続で失敗する

ついにサポート切れでインストールできなくなったか・・・・
0229デフォルトの名無しさん
垢版 |
2021/07/02(金) 12:16:10.35ID:y5h8C7bb
>>227
isoないから困っているわ・・・
0230デフォルトの名無しさん
垢版 |
2021/07/02(金) 12:16:59.28ID:y5h8C7bb
iso探したけど英語版ならググレばあるけど、日本語版はないね
0231デフォルトの名無しさん
垢版 |
2021/07/02(金) 12:25:22.75ID:y5h8C7bb
メルカリやヤフオクでも5万以上するし
なんとかしたいな
0233デフォルトの名無しさん
垢版 |
2021/07/02(金) 13:34:53.99ID:aZtoy0Li
ここ普通に生きてない?
https://my.visualstudio.com/Downloads?q=visual%20studio%202010
もうみんな忘れてるかもしれんが、この時代から試用版の中身は製品版そのものだ。

っていうか、iso落として保存してない間抜けな人っているんだねw
っていうかこの時代はそもそも普通にAmazonとかでパッケージ版買ってたと思うんだけどw
0234デフォルトの名無しさん
垢版 |
2021/07/02(金) 15:36:12.76ID:y5h8C7bb
>>233
いけたわ
マジでありがとう!!

ヤフオクで5万円で買わずにすんだわ
リアル知り合いならモスのソイパティをおごりたいところ
0235デフォルトの名無しさん
垢版 |
2021/07/09(金) 10:53:10.54ID:9AGW0Ryt
7-Zip 21.02 alphaのソースから7z.sfxと7zCon.sfxがビルドできなくなったな。7zS.sfxはまだ行けた。
だいぶ昔の19.00のソースならどちらもビルドできた。
VS2013なら21.02 alphaでもすべてビルドできた。
0236デフォルトの名無しさん
垢版 |
2021/10/27(水) 03:20:51.39ID:yd/oOtSU
2022スレ立ってるけど
もうバージョンでスレ分ける意味なんてないだろ
しかもワッチョイだし
0237デフォルトの名無しさん
垢版 |
2021/11/03(水) 14:29:51.48ID:6fv+OhcH
あげ
0238デフォルトの名無しさん
垢版 |
2021/11/09(火) 10:38:25.69ID:dO6zD4He
VisualStudio2010のC#で作成した2つのアプリ(A,Bとする)と1つのDLL(C.dllとする)
があって、C.dll内の関数のfloatやdoubleを使った計算が、Aから呼び出した場合とBから呼び出した場合
で異なる(誤差が出る)んだけど、何が原因なんだろう?ターゲットプラットフォームの
問題かと考えてAとBをx86にそろえたけど変わらない。
0240デフォルトの名無しさん
垢版 |
2021/11/09(火) 11:24:03.51ID:dO6zD4He
>>239
早速の返信ありがとうございます。
ビンゴかもしれません!
今、条件を変えて調査中です・・
0242デフォルトの名無しさん
垢版 |
2021/11/09(火) 12:29:22.98ID:dO6zD4He
238です。
宣言は確かに異なっていたのですが、合わせてみても結果はかわりませんでした。
0244デフォルトの名無しさん
垢版 |
2021/11/09(火) 13:44:02.60ID:dO6zD4He
誤差の出る部分を絞り込むと、math.sqrtに行き当たりました。
こんな感じです。

A:Math.sqrt(14) = 3.74165749549866
B:Math.sqrt(14) = 3.74165738677394
0250デフォルトの名無しさん
垢版 |
2021/11/09(火) 16:31:34.45ID:dO6zD4He
>>246>>247のヒントで、C.dll内にあるMath.Pow, Math.Sqrt, Math.Ceilingなど、
floatからdoubleにキャストされてしまう関数を再度floatにキャストしたり、小数部の
誤差を切り捨てるで、誤差を減らせることがわかりました。(なかったことにするとも言う)
最悪これでいきます。
AとBのアプリからC.dllの同じ関数を同じ引数で呼んでいるのに、なぜ戻り値が
異なるのかはわかっていません。そこがわかればスッキリ直せそうなのですが。
0251デフォルトの名無しさん
垢版 |
2021/11/09(火) 16:48:46.70ID:11xPhQ7m
どっかで型変換しちゃってるんでしょ
面倒なことせずにABC全部doubleで統一したらいいよw
0252デフォルトの名無しさん
垢版 |
2021/11/09(火) 18:24:21.94ID:dO6zD4He
どこかで型変換してしまっているんですかねぇ。。
お伝えできていませんでしたが、A、BからC.dllへ渡す引数はすべてInt型です。
C.dll内の数値計算でfloat,doubleが使われています。C.dll内で型変換を
してしまっているのなら、A,Bどちらからも条件は同じはずなのに・・
私としてはVisualStudioの設定の問題かと思ってこちらに書き込みましたが、
スレチな可能性が出てきましたので、この辺でおいとましようかと思います。
0253デフォルトの名無しさん
垢版 |
2021/11/09(火) 18:25:07.92ID:8kpY2GOq
>AとBのアプリからC.dllの同じ関数を同じ引数で呼んでいる

あやCすぎる
0254デフォルトの名無しさん
垢版 |
2021/11/09(火) 19:11:41.21ID:11xPhQ7m
ABはこのどちらかの問題があるはず
・dllに同じ値を渡してるつもりだけど、実は異なる値を渡してる
・dllから異なる値が返ってきてるつもりだけど、実は同じ値を受け取ってから異なる値にしてしまってる

Cは小数点の計算誤差を拡大してる状態だろうからそこも修正すべきだけど、とりあえず今回の問題とは無関係

まぁABCの全ソースをうpするぐらいじゃないとわからないな(一部ソースにするとたいていそこに問題あるから全ソースじゃないとダメ)
0255デフォルトの名無しさん
垢版 |
2021/11/09(火) 19:20:31.38ID:eGS5fyGL
ABから完全に同一条件で同一のメソッドを呼んでいるかが最初に確認すべきことだと思うんだけど
そこを誰も聞かないのが凄いねw
0256デフォルトの名無しさん
垢版 |
2021/11/10(水) 00:47:51.68ID:UV3syQpY
なにを期待してるんか知らんけど
そもそも真面目に答える義務なんて無いから
ノイズだらけの問題にまともな答えが来ると思ってる方が可笑しい
0257デフォルトの名無しさん
垢版 |
2021/11/10(水) 08:39:33.56ID:gxiWSUFZ
質問主です。
いいえ、皆さんの意見は参考になっています。ありがとうございます。

ソースコード全部は難しいので、現象を簡略化してみました。
C.dllに次の関数を用意し、A、Bから呼び出しました。
public static int test()
{
string tmpStr = "";
tmpStr += "Math.sqrt(2f) = " + System.Math.Sqrt(2.0f).ToString() + "\n";
tmpStr += "Math.sqrt(2d) = " + System.Math.Sqrt(2.0d).ToString() + "\n";
string tmpFileName = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "debug.txt");
System.IO.File.WriteAllText(tmpFileName, tmpStr);
return 1;
}
結果は次の通りです。
A:
Math.sqrt(2f) = 1.41421353816986
Math.sqrt(2d) = 1.41421353816986
B:
Math.sqrt(2f) = 1.4142135623731
Math.sqrt(2d) = 1.4142135623731
A、Bと引数、結果のやり取りをしていないので、無意識の型変換はされていないと思うのですが、
見逃している点があるのでしょうか。
0261デフォルトの名無しさん
垢版 |
2021/11/10(水) 12:26:40.94ID:gxiWSUFZ
MathF、Aの結果がfloat、いろいろご助言ありがとうございます。
MathFについては、私も調べてみたのですが、.NETのVer.5から追加されており、
今使っているVS2010の.NET Ver.4では実装されていないようです。
とはいえ核心に近づいていると感じますので、同様の問題に引っかかっていないか、
調べています。
0262デフォルトの名無しさん
垢版 |
2021/11/10(水) 12:38:22.20ID:gxiWSUFZ
呼び出し方については、下記まで簡略化しました。
A,Bとも(BはFormAとFormBと読み替え)
namespace WindowsApplication1
{
 public partial class FormA:Form
 {
  public FormA()
  {
   InitializeComponent();
   tlib.tcls.test();
  }
 }
}
C.dllは
namespace tlib
{
 public static class tcls
 {
  public static int test()
  {
   >>257と同じ
  }
 }
}
A、BともC.dllをソリューションエクスプローラーの「参照設定」から追加しました。
0263デフォルトの名無しさん
垢版 |
2021/11/10(水) 12:56:54.42ID:72cRDnd/
簡略した形式でいいから誰でも再現できるようにABC全ソース(プロジェクト一式)をzipでかためてどっかにうpしろって
>>262は言葉にしたら「ACとABは同じソースコードなのに結果が変わる」だからな。それはあり得ないんだよ
0264デフォルトの名無しさん
垢版 |
2021/11/10(水) 13:03:25.84ID:/xBD3bqR
実は C.dll が2個あるとかは?
A と B の置き場所カレントディレクトリを一緒にして C.dll もそこに置いて確認はしたか
0265デフォルトの名無しさん
垢版 |
2021/11/10(水) 15:01:00.72ID:gxiWSUFZ
全ソースを準備している途中で、どこかの段階でAの結果がBと一致するようになりました。
ありがとうございます。ここまでくれば徐々にAを戻していって、自力で原因に
たどり着けそうです。皆様の助言のおかげです。
0266デフォルトの名無しさん
垢版 |
2021/11/10(水) 15:58:40.41ID:4cUwoZ2K
やっぱりここで言ってるのとは違って実際には「違うことやってるから違う結果が出た」だけの話だよねw

最初からそうだと思ったよ。

プロジェクトの設定にMath.Sqrtとかの結果に影響を与えるようなオプションなんて存在しないしw
0267デフォルトの名無しさん
垢版 |
2021/11/10(水) 16:29:30.75ID:VzdAvmBl
コンパイルオプションで常にdoubleをfloatで計算するようなのあったっけ
0268デフォルトの名無しさん
垢版 |
2021/11/10(水) 16:44:46.75ID:gxiWSUFZ
質問主です。
原因は、ネットから落として来たフリーのDirectX関係のライブラリでした。
このライブラリの初期化前に実行するとSystem.Math.Sqrtは正しい(doubleの)
答えを返します。回避策としてSystem.Math.Powを使えそうです。
このライブラリがSystem.Mathに影響を与えるはずがない、と思い込んでいた私が
間違っておりました。
皆様のご助言、大変助かりました。
0269デフォルトの名無しさん
垢版 |
2021/11/10(水) 17:23:35.18ID:VzdAvmBl
なるほど
>フリーのDirectX関係のライブラリ
kwsk
0273デフォルトの名無しさん
垢版 |
2021/11/11(木) 10:48:39.76ID:xUMRmi1T
標準ライブラリの置き換えはわりとやるぞ
例えばPCのシステムタイム変更したくない/できないからkernel32のGetTimeZoneInformationの動作変えるとかさ
math.sqrtが置換できるのかは知らないけどdirectx系ならやりたくなってもおかしくない
0274デフォルトの名無しさん
垢版 |
2021/11/12(金) 08:37:33.57ID:/mOMSKGK
質問主です。
ライブラリの作者の方に相談したところ、これはDirect3D 9の仕様であり、計算速度を稼ぐために
CPUの浮動小数点演算の精度をfloatに変更するのがデフォルトになっているとのことでした。
それを無効化するオプションの設定方法を教えていただき、無事解決しました。
0275デフォルトの名無しさん
垢版 |
2021/11/12(金) 10:36:52.59ID:uCoii1J0
>Direct3D 9の仕様

ほう
オプション描けよ
0276デフォルトの名無しさん
垢版 |
2021/11/12(金) 10:51:59.06ID:/mOMSKGK
DirectXの初期化時にD3DCREATE_FPU_PRESERVEというフラグをセットすること
により、回避できるそうです。
0277デフォルトの名無しさん
垢版 |
2021/11/12(金) 10:57:11.64ID:uCoii1J0
GJ
0278デフォルトの名無しさん
垢版 |
2021/11/12(金) 11:09:39.08ID:FZk+tejh
https://docs.microsoft.com/ja-jp/windows/win32/direct3d9/d3dcreate
Direct3D 浮動小数点演算の精度を、呼び出し元のスレッドで使用される有効桁数に設定します。
このフラグを指定しない場合、Direct3D では、次の2つの理由により、
既定で単精度のラウンドツーニアモードが使用されます。

倍精度モードでは、Direct3D のパフォーマンスが低下します。
Direct3D の部分は、浮動小数点単位の例外がマスクされることを想定しています。
これらの例外をマスク解除と、未定義の動作が発生する可能性があります。

なるほど最近のバージョンでも起こり得るのかな
0279デフォルトの名無しさん
垢版 |
2021/11/12(金) 13:01:11.41ID:JADHf6kW
Dirext3D内部の設定がSystem.Mathに影響を与えるってこと?w

よく知らんがFPU自体が演算精度の設定を持ってて、
プロセス全体の演算精度がそれに影響されるってこと?

聞いたことないけどマジならヤバいねw
0281デフォルトの名無しさん
垢版 |
2021/11/12(金) 18:48:12.56ID:JnXYuZWY
割と見つかる
>>274 のDirectXのライブラリの作者の方のチョンボか
>>270 の言う通り本人か
http://slapper.sblo.jp/article/38594486.html
https://so-zou.jp/software/tech/library/managed-direct3d/troubleshooting/operation-precision.htm
http://scientistb.blog42.えふしー2.com/blog-entry-148.html
https://qiita.com/mod_poppo/items/9588b6f425ffe4b5c7bf
https://qiita.com/YamadaSan/items/63cdc124c191e3c3fff1
https://qiita.com/yuji_yasuhara/items/0f94f3b60b4525dd1e74
0282デフォルトの名無しさん
垢版 |
2021/12/02(木) 21:49:14.57ID:1bhUWA4L
デバッグ時にのみ環境変数を設定したいのですが
プロジェクト→プロパティ構成プロパティ→デバッグ→環境
で設定しようとしても1つしか設定出来ません
hoge1=a
hoge2=b
のようにしてもhoge1のみしか有効になりません
解決策あるでしょうか?
0283デフォルトの名無しさん
垢版 |
2021/12/02(木) 22:45:10.20ID:yWr6GauZ
pathを複数設定するときに複数行で書けず1行にしないといけなくて困ったことあるけど、それもだめなのかよ。なんとかしてもらいたいな
ソースコード中で#ifdef DEBUGとか使って設定したら?
0285デフォルトの名無しさん
垢版 |
2022/09/09(金) 14:48:17.39ID:rZ/ATUsx
使っているのはexe化しているpy2exeだから、
心配なら最新のPython上で動かせばいい。
レスを投稿する


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