imported>Bbon (새 문서: == 다운로드 == .net framework 4.0 재배포 패키지 *[http://www.microsoft.com/ko-kr/download/details.aspx?id=17718 독립실행형] *[http://download.microsoft.com/download/9/5/A/...) |
imported>Bbon |
||
(같은 사용자의 중간 판 하나는 보이지 않습니다) | |||
4번째 줄: | 4번째 줄: | ||
*[http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe 독립실행형 파일링크] | *[http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe 독립실행형 파일링크] | ||
*[http://www.microsoft.com/ko-kr/download/details.aspx?id=17851 웹설치관리자] | *[http://www.microsoft.com/ko-kr/download/details.aspx?id=17851 웹설치관리자] | ||
+ | |||
+ | == 설치여부확인== | ||
+ | 아래 코드와 같이 userAgent를 읽어 .Net Framework 3.5가 설치되어 있는지 확인합니다. <br /> | ||
+ | 참조 <cite title="http://msdn.microsoft.com/ko-kr/library/bb909885.aspx">[http://msdn.microsoft.com/ko-kr/library/bb909885.aspx 방법:.NET Framework 3.5설치 여부 확인]</cite> | ||
+ | <br /> | ||
+ | <syntaxhighlight lang="javascript"><HTML> | ||
+ | <HEAD> | ||
+ | <TITLE>Test for the .NET Framework 3.5</TITLE> | ||
+ | <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" /> | ||
+ | <SCRIPT LANGUAGE="JavaScript"> | ||
+ | <!-- | ||
+ | var dotNETRuntimeVersion = "3.5.0.0"; | ||
+ | |||
+ | function window::onload() | ||
+ | { | ||
+ | if (HasRuntimeVersion(dotNETRuntimeVersion)) | ||
+ | { | ||
+ | result.innerText = | ||
+ | "This machine has the correct version of the .NET Framework 3.5." | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | result.innerText = | ||
+ | "This machine does not have the correct version of the .NET Framework 3.5." + | ||
+ | " The required version is v" + dotNETRuntimeVersion + "."; | ||
+ | } | ||
+ | result.innerText += "\n\nThis machine's userAgent string is: " + | ||
+ | navigator.userAgent + "."; | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // Retrieve the version from the user agent string and | ||
+ | // compare with the specified version. | ||
+ | // | ||
+ | function HasRuntimeVersion(versionToCheck) | ||
+ | { | ||
+ | var userAgentString = | ||
+ | navigator.userAgent.match(/.NET CLR [0-9.]+/g); | ||
+ | |||
+ | if (userAgentString != null) | ||
+ | { | ||
+ | var i; | ||
+ | |||
+ | for (i = 0; i < userAgentString.length; ++i) | ||
+ | { | ||
+ | if (CompareVersions(GetVersion(versionToCheck), | ||
+ | GetVersion(userAgentString[i])) <= 0) | ||
+ | return true; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | return false; | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // Extract the numeric part of the version string. | ||
+ | // | ||
+ | function GetVersion(versionString) | ||
+ | { | ||
+ | var numericString = | ||
+ | versionString.match(/([0-9]+)\.([0-9]+)\.([0-9]+)/i); | ||
+ | return numericString.slice(1); | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // Compare the 2 version strings by converting them to numeric format. | ||
+ | // | ||
+ | function CompareVersions(version1, version2) | ||
+ | { | ||
+ | for (i = 0; i < version1.length; ++i) | ||
+ | { | ||
+ | var number1 = new Number(version1[i]); | ||
+ | var number2 = new Number(version2[i]); | ||
+ | |||
+ | if (number1 < number2) | ||
+ | return -1; | ||
+ | |||
+ | if (number1 > number2) | ||
+ | return 1; | ||
+ | } | ||
+ | |||
+ | return 0; | ||
+ | } | ||
+ | |||
+ | --> | ||
+ | </SCRIPT> | ||
+ | </HEAD> | ||
+ | |||
+ | <BODY> | ||
+ | <div id="result" /> | ||
+ | </BODY> | ||
+ | </HTML></syntaxhighlight> | ||
+ | |||
+ | =WCF= | ||
+ | [http://support.microsoft.com/kb/983182/ko A hotfix is available for performance issues in Windows Communication Foundation for the .NET Framework 4.0] | ||
+ | |||
+ | WCF Memory leak on Host Windows Service |
2013년 12월 27일 (금) 02:55 기준 최신판
다운로드
.net framework 4.0 재배포 패키지
설치여부확인
아래 코드와 같이 userAgent를 읽어 .Net Framework 3.5가 설치되어 있는지 확인합니다.
참조 방법:.NET Framework 3.5설치 여부 확인
<HTML>
<HEAD>
<TITLE>Test for the .NET Framework 3.5</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" />
<SCRIPT LANGUAGE="JavaScript">
<!--
var dotNETRuntimeVersion = "3.5.0.0";
function window::onload()
{
if (HasRuntimeVersion(dotNETRuntimeVersion))
{
result.innerText =
"This machine has the correct version of the .NET Framework 3.5."
}
else
{
result.innerText =
"This machine does not have the correct version of the .NET Framework 3.5." +
" The required version is v" + dotNETRuntimeVersion + ".";
}
result.innerText += "\n\nThis machine's userAgent string is: " +
navigator.userAgent + ".";
}
//
// Retrieve the version from the user agent string and
// compare with the specified version.
//
function HasRuntimeVersion(versionToCheck)
{
var userAgentString =
navigator.userAgent.match(/.NET CLR [0-9.]+/g);
if (userAgentString != null)
{
var i;
for (i = 0; i < userAgentString.length; ++i)
{
if (CompareVersions(GetVersion(versionToCheck),
GetVersion(userAgentString[i])) <= 0)
return true;
}
}
return false;
}
//
// Extract the numeric part of the version string.
//
function GetVersion(versionString)
{
var numericString =
versionString.match(/([0-9]+)\.([0-9]+)\.([0-9]+)/i);
return numericString.slice(1);
}
//
// Compare the 2 version strings by converting them to numeric format.
//
function CompareVersions(version1, version2)
{
for (i = 0; i < version1.length; ++i)
{
var number1 = new Number(version1[i]);
var number2 = new Number(version2[i]);
if (number1 < number2)
return -1;
if (number1 > number2)
return 1;
}
return 0;
}
-->
</SCRIPT>
</HEAD>
<BODY>
<div id="result" />
</BODY>
</HTML>
WCF
WCF Memory leak on Host Windows Service