.NET 3.5 রয়েছে এমন কোনও সার্ভারে এসপি 1 ইনস্টল করা আছে কিনা তা আমি কীভাবে জানতে পারি?
উত্তর:
তাকান HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5\
। এর মধ্যে একটি সত্য হতে হবে:
Version
কীটির মান 3.5.30729.01 হওয়া উচিতSP
একই কীতে মান 1 হওয়া উচিতসি # তে (প্রথম মন্তব্য থেকে নেওয়া), আপনি এই লাইনগুলি বরাবর কিছু করতে পারেন:
const string name = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5";
RegistryKey subKey = Registry.LocalMachine.OpenSubKey(name);
var version = subKey.GetValue("Version").ToString();
var servicePack = subKey.GetValue("SP").ToString();
Version
আছে 3.5.30729.5420
এবং SP
তা1
reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5" /V Version
reg query "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5" /V SP
আপনি সার্ভার থেকে আইই ব্যবহার করে স্মার্টলডডটনেটে যেতে পারেন । এটি আপনাকে সংস্করণটি বলবে এবং আপনার তারিখের বাইরে থাকলে ডাউনলোড লিঙ্কও সরবরাহ করবে।
দূরবর্তী ডেস্কটপ বা রেজিস্ট্রি অ্যাক্সেস ছাড়াই কীভাবে কোনও সার্ভারে ইনস্টল করা ফ্রেমওয়ার্ক সংস্করণগুলি সনাক্ত করতে হয় তা নির্ধারণের চেষ্টা করার সময় আমি এই পৃষ্ঠায় এসেছি, তাই ড্যানি ভি এর উত্তর আমার পক্ষে কাজ করেছিল।
string path = System.Environment.SystemDirectory;
path = path.Substring( 0, path.LastIndexOf('\\') );
path = Path.Combine( path, "Microsoft.NET" );
// C:\WINDOWS\Microsoft.NET\
string[] versions = new string[]{
"Framework\\v1.0.3705",
"Framework64\\v1.0.3705",
"Framework\\v1.1.4322",
"Framework64\\v1.1.4322",
"Framework\\v2.0.50727",
"Framework64\\v2.0.50727",
"Framework\\v3.0",
"Framework64\\v3.0",
"Framework\\v3.5",
"Framework64\\v3.5",
"Framework\\v3.5\\Microsoft .NET Framework 3.5 SP1",
"Framework64\\v3.5\\Microsoft .NET Framework 3.5 SP1",
"Framework\\v4.0",
"Framework64\\v4.0"
};
foreach( string version in versions )
{
string versionPath = Path.Combine( path, version );
DirectoryInfo dir = new DirectoryInfo( versionPath );
if( dir.Exists )
{
Response.Output.Write( "{0}<br/>", version );
}
}
এই নিবন্ধটি একবার দেখুন যা আপনার যা দেখতে হবে সেই রেজিস্ট্রি কীগুলি দেখায় এবং একটি নেট নেট লাইব্রেরি সরবরাহ করে যা এটি আপনার জন্য করবে।
প্রথমত, আপনার HKLM \ সফ্টওয়্যার \ মাইক্রোসফ্ট \ নেট ফ্রেমওয়ার্ক সেটআপ \ এনডিপি \ v3.5 \ ইনস্টল করে .NET 3.5 ইনস্টল করা আছে কিনা তা নির্ধারণ করা উচিত, এটি একটি ডিডাবর্ড মান। যদি সেই মানটি উপস্থিত থাকে এবং 1 তে সেট করা থাকে, তবে ফ্রেমওয়ার্কের সেই সংস্করণটি ইনস্টল করা আছে।
এইচকেএলএম \ সফ্টওয়্যার \ মাইক্রোসফ্ট \ নেট ফ্রেমওয়ার্ক সেটআপ \ এনডিপি \ v3.5 at এসপি দেখুন, যা একটি ডিডাব্লর্ড মান যা সার্ভিস প্যাক স্তর নির্দেশ করে (যেখানে 0 কোনও পরিষেবা প্যাক নেই)।
জিনিসগুলি সম্পর্কে সঠিক হতে, আপনার অবশ্যই সত্যতা নিশ্চিত করতে হবে যে। নেট Fx 2.0 এবং .NET Fx 3.0 প্রথমে ইনস্টল করা আছে এবং তারপরে .NET 3.5 ইনস্টল করা আছে কিনা তা পরীক্ষা করে দেখুন। যদি তিনটিই সত্য হয় তবে আপনি পরিষেবা প্যাক স্তরটি পরীক্ষা করতে পারেন।
চেক নিম্নলিখিত ডিরেক্টরি বিদ্যমান:
Bit৪ বিট মেশিনে:% সিস্টেমেট%
32 বিট মেশিনে:% সিস্টেম সিস্টেম% \ মাইক্রোসফট.নেট \ ফ্রেমওয়ার্ক \ v3.5 \ মাইক্রোসফ্ট। নেট ফ্রেমওয়ার্ক 3.5 এসপি 1 \
যেখানে% SYSTEMROOT% হ'ল সিস্টেম্রুট পরিবেশগত পরিবর্তনশীল (যেমন সি: \ উইন্ডোজ)।
নামটি সর্বত্র "মাইক্রোসফ্ট। নেট ফ্রেমওয়ার্ক 3.5 এসপি 1" রয়েছে বলে ধরে নিলে আপনি এটি ব্যবহার করতে পারেন:
string uninstallKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (RegistryKey rk = Registry.LocalMachine.OpenSubKey(uninstallKey))
{
return rk.GetSubKeyNames().Contains("Microsoft .NET Framework 3.5 SP1");
}