2025年6月11日 星期三

透過 Visual Studio Installer 下載離線安裝包 Visual Studio2022

 


指令如下:

VisualStudioSetup.exe --layout D:\VS2022_Offline --lang zh-TW --add Microsoft.VisualStudio.Workload.ManagedDesktop Microsoft.VisualStudio.Workload.NetWeb

🔍 這組指令會下載哪些內容?

1. Microsoft.VisualStudio.Workload.ManagedDesktop

  • 對應功能:Windows Forms / WPF 桌面應用程式開發

  • 包含的內容(依 Visual Studio 版本而定):

    • .NET SDK(通常包含當下支援的 .NET 6 / .NET 7 / .NET 8)

    • Windows 桌面相關工具(WinForms/WPF Designer、XAML Hot Reload 等)

    • MSBuild 支援、編譯器、診斷工具

    • 開發時間的 .NET Desktop Runtime (.NET 6/7/8)


2. Microsoft.VisualStudio.Workload.NetWeb

  • 對應功能:ASP.NET / ASP.NET Core / Web API 開發

  • 包含的內容(依 Visual Studio 版本而定):

    • ASP.NET Core SDK (.NET 6 / 7 / 8)

    • .NET Web 開發工具(Hot Reload、Razor 編輯器、Blazor)

    • IIS Express、Web 編輯與測試相關工具

    • Entity Framework 工具、SQL Server Express LocalDB


✅ 是否會包含 .NET 6 和 .NET 8?

會包含 .NET 6 和 .NET 8(前提是你用的是新版的 VS 安裝程式,例如 v17.7 以上)

如果你使用的是 新版的 bootstrapperVisualStudioSetup.exe 來自 Visual Studio 2022 v17.8 或 v17.10),那這兩個工作負載會自動下載:

SDK/Runtime是否包含
.NET 6 SDK + Runtime✅ 會包含(LTS,仍列為主要支援)
.NET 7 SDK + Runtime✅ 視情況包含
.NET 8 SDK + Runtime✅ 必定包含(目前最新版 LTS)

👉 你無需額外手動加入 Microsoft.NetCore.Component.SDK.8.0,因為它已被這些工作負載自動引用。


延伸指令

如果需要包含 .net framework4.8和4.8.1則需要調整指令如下


vs_professional.exe --layout D:\VS2022_Offline --lang zh-TW --add     Microsoft.VisualStudio.Workload.ManagedDesktop     Microsoft.VisualStudio.Workload.NetWeb     Microsoft.Net.Component.4.8.SDK     Microsoft.Net.Component.4.8.TargetingPack     Microsoft.Net.Component.4.8.1.SDK     Microsoft.Net.Component.4.8.1.TargetingPack



2024年6月13日 星期四

[.NET Core] 解決MVC網頁服務的dll常常被IIS咬住


在開發.Net Core MVC時,因為專案有多個web和api服務依附在iis上做運行,會需要邊跑網頁邊開發,因此常發生project編譯出來的dll被iis咬住,這時候就得手動重啟iis,但等IIS重啟實在太慢了



 以下是更詳細的步驟說明,以便更好地幫助你設置和使用這些批次檔案:

步驟 1:建立iisrestart1.bat批次檔

  1. 打開記事本(Notepad)或任何文字編輯器。
  2. 輸入以下指令:

    C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"WebAPIPool" C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"XXXwebPool"
  3. 將檔案另存為iisrestart1.bat,確保副檔名是.bat而不是.txt

步驟 2:建立批次檔的捷徑並設置快捷方式

  1. 右鍵點擊iisrestart1.bat,選擇"建立捷徑"。
  2. 右鍵點擊剛剛建立的捷徑,選擇"內容"。
  3. 在"目標"欄位中輸入以下內容:

    C:\Windows\System32\cmd.exe /C "C:\Users\XXXX\Documents\iisrestart1.bat"
    注意將C:\Users\XXXX\Documents\iisrestart1.bat替換為你實際存放批次檔的位置。

步驟 3:將捷徑釘選到工作列

  1. 右鍵點擊剛才建立的捷徑,選擇"釘選到工作列"。
  2. 現在你可以從工作列直接執行這個批次檔,快速釋放IIS應用程式Pool。

額外指令筆記

  1. 砍掉所有w3wp執行緒


    taskkill /F /IM w3wp.exe /T

    這個指令會強制終止所有的w3wp.exe進程,可以用來在IIS完全無法回應時強制重啟IIS工作進程。

  2. 回收指定的IIS Pool


    C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"WebAPIPool" C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"XXXwebPool"

    這些指令用來回收指定的IIS應用程式池,通常用於釋放被鎖定的資源。

注意事項

  1. 權限問題:確保你的使用者帳號有足夠的權限來執行這些IIS相關的指令,否則可能會失敗。
  2. 批次檔路徑:檢查批次檔路徑是否正確,以避免因路徑錯誤而無法執行。
  3. 應用程式池名稱:確保應用程式池名稱正確,否則指令將無法找到並回收相應的應用程式池。

這樣設置後,你應該可以更快捷地管理IIS應用程式池,提升開發過程中的效率。

2023年3月26日 星期日

如何自動賺Rewards點數 - 用firefox套件 Selenium IDE

 用FireFox的Selenium IDE來寫自動測試,可在bing搜尋頁面輸入隨機5碼數字,並按下搜尋,這樣的動作要執行35次


以下是使用 Selenium IDE 寫自動測試的步驟:


打開 Selenium IDE。

在左側的 "Test Suites" 面板中點擊 "+ New Test Suite",並為測試套件命名。

在 "Test Cases" 面板中點擊 "+ New Test Case",並為測試用例命名。

在 "Commands" 面板中點擊 "+ Add Command"。

在彈出的命令列表中,選擇 "open",並在 "Target" 欄位中輸入 "https://www.bing.com/",然後點擊 "Add" 按鈕。

再次點擊 "+ Add Command"。

選擇 "type",並在 "Target" 欄位中輸入 "id=sb_form_q",在 "Value" 欄位中輸入一個隨機的 5 位數字(可以使用 JavaScript 生成),然後點擊 "Add" 按鈕。

再次點擊 "+ Add Command"。

選擇 "click",並在 "Target" 欄位中輸入 "id=sb_form_go",然後點擊 "Add" 按鈕。

複製步驟 7 到步驟 9,並將其插入到測試用例中,以模擬在 Bing 搜尋頁面上輸入另一個隨機 5 位數字的動作。

在 Selenium IDE 工具欄中點擊 "Run" 按鈕,以運行測試。

下面是相應的 Selenium IDE 測試腳本:


{

  "id": "f116f9c6-40b1-413a-ba0f-182bd3501gpt",

  "version": "2.0",

  "name": "Bing Search Test from GPT",

  "url": "https://www.bing.com",

  "tests": [

    {

      "id": "Test Case",

      "name": "Search for Random 5-Digit Number Twice",

      "commands": [

        {

          "command": "open",

          "target": "/search?q=AI",

          "value": ""

        },  

        {

          "command": "execute script",

          "target": "return 1;",

          "value": "index"

        },

        {

          "command": "while",

          "target": "${index} < 35 + 1",

          "value": ""

        },

        {

          "command": "execute script",

          "target": "return Math.floor(Math.random() * 90000) + 10000;",

          "value": "searchTerm"

        },

        {

          "command": "type",

          "target": "id=sb_form_q",

          "value": "${index}${searchTerm}"

        },

        {

          "command": "click",

          "target": "id=sb_form_go",

          "value": ""

        },

{

  "command": "pause",

  "target": "2800",

  "value": ""

},

        {

          "command": "execute script",

          "target": "return ${index} + 1;",

          "value": "index"

        },

        {

          "command": "end",

          "target": "",

          "value": ""

        }

      ]

    }

  ]

}







注意:在這個腳本中,我們使用了 JavaScript 的 Math.random() 函数來生成隨機的5 位數字。這個函數生成一個 0 到 1 之間的隨機小數,然後我們將其乘以 90000,再加上 10000,這樣就能生成一個 10000 到 99999 之間的隨機整數了。


此外,這個腳本中還使用了 Selenium IDE 的基本命令 open、type 和 click,這些命令可以模擬網頁上的基本操作,比如打開頁面、輸入文字和點擊按鈕等。


最後,我們可以運行這個腳本,讓 Selenium IDE 自動打開 Bing 搜尋頁面,輸入隨機的 5 位數字,然後點擊搜尋按鈕,這樣的動作會被執行35次,並且每次都會使用不同的隨機數字進行搜索。




=============================



您可以使用Firefox的User-Agent Switcher and Manager擴充套件來切換不同的User-Agent。這個擴充套件能夠修改HTTP傳輸協定的請求標頭(request header)字串值(如:瀏覽器排版引擎、作業系統版本),以達到瀏覽網頁時能進行偽裝切換(如只有透過手機瀏覽才能顯示手機專用的網頁版本)。

在Firefox的擴充套件商店中下載安裝User-Agent Switcher and Manager,安裝完成後,在工具列點開圖示,即可任意切換不同系統的瀏覽器,查看網頁在不同平台裝置上所支援的顯示。


使用User-Agent Switcher and Manager的方法很簡單。首先,在瀏覽器右上方點擊「 」圖示即可點開User-Agent Switcher and Manager操作介面。

在介面中,您可以選擇瀏覽器版本和作業系統版本,最後選擇瀏覽器編號版本,點選完畢後可點擊「Apply (Active window)」(只套用當前作用中所開啟的網站分頁)或「Apply (all windows)」(套用所有開啟的網站分頁)按鈕進行設定套用。

2023年2月23日 星期四

[筆記] mio 5051 如何產製KML檔

 


用Google的 my map建置好地圖,接著再匯出成KML

https://www.google.com/maps/d/?hl=zh-TW






打開KML檔,把 <Document> 這層節點拿掉







2022年3月15日 星期二

[SQL] 找出執行時間最長的10條SQL

 

如果想對SQL作篩選,可將

not like '%fetch%'  換成  like '%user%'就可以找出SQL語句中含有user關鍵字的SQL

原文:

http://blog.csdn.net/silvanus/article/details/8424227


SELECT top 10
	(total_elapsed_time / execution_count)/1000 N'平均時間ms'
	,total_elapsed_time/1000 N'總花費時間ms'
	,total_worker_time/1000 N'所用的CPU總時間ms'
	,total_physical_reads N'物理讀取總次數'
	,total_logical_reads/execution_count N'每次邏輯讀次數'
	,total_logical_reads N'邏輯讀取總次數'
	,total_logical_writes N'邏輯寫入總次數'
	,execution_count N'執行次數'
	,creation_time N'語句編譯時間'
	,last_execution_time N'上次執行時間'
	,SUBSTRING(
		st.text, 
		(qs.statement_start_offset/2) + 1, 
		(
			(CASE statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE qs.statement_end_offset END - qs.statement_start_offset)/2
		) + 1
	) N'執行語句'
	,qp.query_plan
FROM
sys.dm_exec_query_stats AS qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) st CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp
WHERE
	SUBSTRING(
		st.text, 
		(qs.statement_start_offset/2) + 1,
		(
			(CASE statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE qs.statement_end_offset END - qs.statement_start_offset)/2
		) + 1
	) not like '%fetch%'
ORDER BY
	total_elapsed_time / execution_count DESC;










2022年3月14日 星期一

[.NET Core] 解決MVC網頁服務的dll常常被IIS咬住

 

在開發.Net Core MVC時,因為專案有多個web和api服務依附在iis上做運行,會需要邊跑網頁邊開發,因此常發生project編譯出來的dll被iis咬住,這時候就得手動重啟iis,但等IIS重啟實在太慢了


Severity Code Description Project File Line Suppression State

Error MSB3027 Could not copy "******\bin\Debug\net6.0\******.dll" to "bin\Debug\net6.0\*****.dll". Exceeded retry count of 10. Failed. The file is locked by: "IIS Worker Process (6404)" Company C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets\


無法將 "****\bin\Debug\net6.0\****.dll" 複製到 "bin\Debug\net6.0\****.dll"。已超過重試次數 10。失敗。檔案鎖定者: "w3wp.exe (6404)" Company C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets 4967


C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets(4967,5): error MSB3021: 無法將檔案 "****\bin\Debug\net6.0\****.dll" 複製到 "bin\Debug\net6.0\****.dll"。由於另一個處理序正在使用檔案 'bin\Debug\net6.0\****.dll',所以無法存取該檔案。





這邊提供比較快速的方法


1. 建立一個iisrestart1.bat批次執行檔

指令內容如下

C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"WebAPIPool"

C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"XXXwebPool"


2. 針對bat 批次檔建立捷徑,接著在捷徑的"內容"中調整"目標"值

C:\Windows\System32\cmd.exe /C "C:\Users\XXXX\Documents\iisrestart1.bat"




3. 釘選到工作列,即可完成



之後只要執行批次檔就可以快速釋放IIS  POOL,進而能順利做編譯,若在DEBUG模式下沒有反應時,則需整個重啟IIS或是砍掉w3wp執行緒



* 指令筆記:


//砍掉所有w3wp執行緒

taskkill /F /IM w3wp.exe /T


//回收指定的IIS Pool

C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"WebAPIPool"

C:\Windows\System32\inetsrv\appcmd.exe recycle apppool /apppool.name:"XXXwebPool"

2022年1月13日 星期四

[工具] WebService測試工具SoapUI

 

 關於使用SoapUI來測試WebService的筆記





貼上網址,後一定要加上 ?WSDL







 

<![CDATA[   ]]>包覆電文內容,但頭尾都不能換行哦


 






2021年12月21日 星期二

[.net] 檢查Server安裝.net 版本

 


檢查server上安裝的.net framework版本



cd C:\Windows\System32

dir %WINDIR%\Microsoft.Net\Framework\v* O-N /B




檢查server上安裝的.net core版本

dotnet --list-sdks




參考 https://docs.microsoft.com/zh-tw/dotnet/core/install/how-to-detect-installed-versions?pivots=os-windows



2021年9月1日 星期三

[MSSQL] 預存程序引用DLL參考



*在組件中加入DLL參考



*可將DLL檔案轉成bytes 直接加入參考



CREATE ASSEMBLY SQLCom

FROM 0x4D5A900003.................

WITH PERMISSION_SET = SAFE;



DLL to bytes string 參考

https://stackoverflow.com/questions/2885335/clr-sql-assembly-get-the-bytestream





 *DLL程式碼


    [Microsoft.SqlServer.Server.SqlFunction]

    public static string GZip(string rawString)

    {

       ..................

            return (string)(Convert.ToBase64String(zippedData));

    }








    * 於資料新增 擴充的 預存程序

    CREATE FUNCTION dbo.GZip(@src nvarchar(MAX))

    RETURNS nvarchar(MAX)

    EXTERNAL NAME SQLCom.UserDefinedFunctions.GZip





*SQL指令
    SELECT dbo.GZip(S_String)




2021年1月25日 星期一

[C#] 利用svcutil.exe下指令產生WCF client端的程式碼

 


在做異質系統間接時,若是透過WCF連線,此時專案就必須加入服務參考,但開發本機端若因為防火牆因素無法直接連到對方的WCF服務來取的服務參考,但目標機器又無法安裝VS2019開發工具,這時可在目標機器上安裝SDK,並利用svcutil.exe來下指令產生clinet端程式碼


以下兩道指令

svcutil.exe /t:metadata http://******/******/MsgService.svc

svcutil *.wsdl *.xsd /language:cs /out:MsgService.cs /config:app.config




2020年6月2日 星期二

[win10] 在Windows 10中以 系統管理員身分

擷取自:https://walker-a.com/archives/5966

參考:https://marcus116.blogspot.com/2018/12/how-to-run-visual-studio-as-administrator-by-default.html




方法:捷徑上指定系統管理員身分為預設的執行權限
在捷徑上按下滑鼠右鍵並選擇「內容」。

【捷徑】分頁畫面上按下〔進階〕。
在〔進階〕內容的畫面上勾選「以系統管理員身分執行」,並按下〔確定〕來離開。


如果出現以下拒絕存取的對話框,請點選〔繼續〕按鈕來完成。


你也可以使用【相容性】分頁上的「以系統管理員身分執行此程式」。

2020年1月3日 星期五

[windows] 控制win10更新時間或停止更新


參考 https://www.bnext.com.tw/article/48840/turn-down-win-10-update

為了掌控windows自動更新自動重開機,必須設定的



在搜尋框內輸入「編輯群組原則」
透過左側的目錄樹轉到「電腦設定 – 系統管理範本 - Windows 元件 - Windows Update」找到「設定自動更新」選項














2019年7月29日 星期一

[windows] 允許多人遠端磚面連線


轉自:https://is.gd/iA0dzF



預設情況下,同一個帳號,只能一個連線,如果建立新的連線,舊的連線會被斷線

以下是開放的方式:

執行 【gpedit.msc】



【電腦設定】->【系統管理範本】->【Windows元件】

>【遠端桌面服務】->【遠端桌面工作階段主機】->【連線】

在右邊的視窗,找到【限制遠端桌面服務的使用者只能使用一個遠端桌面服務工作階段】,預設是【尚未設定】

改成【已停用】




2019年4月4日 星期四

[C#] 用CLR讓 SQL 可以用GZIP壓縮字串


C#  程式碼







     
        /// <summary>
        /// 将传入字符串以GZip算法压缩后,返回Base64编码字符
        /// </summary>
        /// <param name="rawString">需要压缩的字符串</param>
        /// <returns>压缩后的Base64编码的字符串</returns>
        public static string GZip(string rawString)
        {
            return rawString;   //off test
            if (string.IsNullOrEmpty(rawString) || rawString.Length == 0)
            {
                return "";
            }
            else
            {
                byte[] rawData = System.Text.Encoding.UTF8.GetBytes(rawString.ToString());
                byte[] zippedData = GZip_Compress(rawData);
                return (string)(Convert.ToBase64String(zippedData));
            }

        }
        /// <summary>
        /// GZip压缩
        /// </summary>
        /// <param name="rawData"></param>
        /// <returns></returns>
        public static byte[] GZip_Compress(byte[] rawData)
        {
            MemoryStream ms = new MemoryStream();
            GZipStream compressedzipStream = new GZipStream(ms, CompressionMode.Compress, true);
            compressedzipStream.Write(rawData, 0, rawData.Length);
            compressedzipStream.Close();
            return ms.ToArray();
        }
        /// <summary>
        /// 将传入的二进制字符串资料以GZip算法解压缩
        /// </summary>
        /// <param name="zippedString">经GZip压缩后的二进制字符串</param>
        /// <returns>原始未压缩字符串</returns>
        public static string UnGZip(string zippedString)
        {
            return zippedString;   //off test
            if (string.IsNullOrEmpty(zippedString) || zippedString.Length == 0)
            {
                return "";
            }
            else
            {
                byte[] zippedData = Convert.FromBase64String(zippedString.ToString());
                return (string)(System.Text.Encoding.UTF8.GetString(UnGZip_Decompress(zippedData)));
            }
        }
        /// <summary>
        /// ZIP解压
        /// </summary>
        /// <param name="zippedData"></param>
        /// <returns></returns>
        public static byte[] UnGZip_Decompress(byte[] zippedData)
        {
            MemoryStream ms = new MemoryStream(zippedData);
            GZipStream compressedzipStream = new GZipStream(ms, CompressionMode.Decompress);
            MemoryStream outBuffer = new MemoryStream();
            byte[] block = new byte[1024];
            while (true)
            {
                int bytesRead = compressedzipStream.Read(block, 0, block.Length);
                if (bytesRead <= 0)
                    break;
                else
                    outBuffer.Write(block, 0, bytesRead);
            }
            compressedzipStream.Close();
            return outBuffer.ToArray();
        }
 







產生SQL共用函式

-----------------------1.set SQL Server可執行CLR-----------------------
sp_configure 'clr enabled', 1
GO
RECONFIGURE
go

-----------------------2.建立ASSEMBLY-----------------------

CREATE ASSEMBLY Net_SQLCom  FROM '******\bin\Debug\SQLCom.dll'
WITH PERMISSION_SET = SAFE;
--drop ASSEMBLY Net_SQLCom
go

--chk  有沒有看到Net_SQLCom
SELECT * FROM sys.assemblies
go

-----------------------3.建立function-----------------------
--drop function GZip
--drop function UnGZip

CREATE FUNCTION [dbo].[GZip](@str [nvarchar](max) )
RETURNS [nvarchar](MAX) WITH EXECUTE AS CALLER
AS
EXTERNAL NAME [Net_SQLCom].[UserDefinedFunctions].[GZip]
GO


CREATE FUNCTION [dbo].[UnGZip](@str [nvarchar](max) )
RETURNS [nvarchar](MAX) WITH EXECUTE AS CALLER
AS
EXTERNAL NAME [Net_SQLCom].[UserDefinedFunctions].[UnGZip]
GO

--chk  有沒有看到function
SELECT * FROM sys.assembly_modules;

-----------------------4.Test-----------------------
select [dbo].[UnGZip]([dbo].[GZip]('setse' ))





注意資料庫型別

char資料有固定長度,並且都為英文數字。
nchar資料有固定長度,但不確定是否皆為英文數字。
varchar資料沒有固定長度,並且都為英文數字。
nvarchar資料沒有固定長度,且不確定是否皆為英文數字。

[C#] 產生DLL給MS SQL引用



建置CLR 使用者定義函式,產出DLL給MS SQL 會出現錯誤

CREATE ASSEMBLY 失敗,因為組件是針對不支援的 Common Language Runtime 版本所建立的

此時可使用  .NET  3.5 編譯即可



環境 VS 2015
MS SQL 2008 R2


CLR建置方法參考:

如何在SQL Server中加入 C# CLR Function:
https://www.uuu.com.tw/Public/content/article/18/20180402.htm

https://dotblogs.com.tw/rockchang/2016/06/07/141319




2019年1月1日 星期二

[C#] 取得檔案路徑相關資訊



參考:http://rojerchen.blogspot.com/2013/02/c.html


            string file = @"d:\abc\123.txt";

            //string file = @"d:\abc\";

            string s0 = Path.GetFileName(file); //取得完整檔名 > 123.txt

            string s1 = Path.GetFileNameWithoutExtension(file); //取得檔案名,不包含副檔名,本例得到 123
           
            string s2 = Path.GetExtension(file); //取得副檔名 txt

            string s3 = Path.GetPathRoot(file); //取得根目錄 d:\a

            string s4 = Path.GetFullPath(file); //取得路徑 d:\abc\123.txt



2018年12月24日 星期一

[Android] google 地圖 沒有網路連線


解法參考 https://goo.gl/7p3YQh



小米收機在行動網路4g的環境下

打開 Google Map 地圖,會一直出現沒有網路連線,並且不能搜尋路徑

但是在wifi環境下是正常的

這時候 點開設定=>個人內容=>
嘗試關閉 [網路和應用程式活動] 
[時間軸電子郵件]
[google 相簿]
[在你的個人資料上顯示你所發布的內容]

大概是某個設定裡頭的資料紀錄有bug導致的,可嘗試關閉看看



2018年11月28日 星期三

釋放硬碟空間技巧



轉自 轉貼處 :    https://forum.gamer.com.tw/Co.php?bsn=60030&sn=1587497




        
電腦硬碟空間的用處:
如果電腦系統硬碟(通常在C:)裡的資料越多,電腦的讀取速度就會越慢;所以有效的釋放電腦硬碟空間,除了可以解決硬碟空間不足的問題,也能改善電腦系統效能喔。

以下是從網路上收集的釋放硬碟空間技巧,供大家參考:轉貼



1.開啟「我的電腦」-「工具」-「資料夾選項」-「檢視」-在「顯示所有文件和資料夾」選項前打勾-「確定」 

2.移除以下資料夾中的內容:

x:\Documents and Settings\用戶名\Cookies\下的所有文件(保留index文件)
x:\Documents and Settings\用戶名\Local Settings\Temp\下的所有文件(用戶臨時文件)
x:\Documents and Settings\用戶名\LocalSettings\TemporaryInternet Files\下的所有文件(頁面文件)
x:\Documents and Settings\用戶名\Local Settings\History\下的所有文件(歷史紀錄)
x:\Documents and Settings\用戶名\Recent\下的所有文件(最近瀏覽文件的建立捷逕)
x:\WINDOWS\Temp\下的所有文件(臨時文件)
x:\WINDOWS\ServicePackFiles(昇級sp1或sp2後的備份檔案)
x:\WINDOWS\Driver 快取\i386下的壓縮檔案(驅動程式的備份檔案)
x:\WINDOWS\SoftwareDistribution\download下的所有文件

3.如果對系統進行過windoes updade昇級,則移除以下文件:
x:\windows\下以 $u... 開頭的隱藏文件


4.磁牒進行磁碟重組:
「開始」-「程式集」-「附屬應用程式」-「系統工具」-「磁碟重組工具」 


5.磁碟重組後開啟「開始」-「程式集」-「附屬應用程式」-「系統工具」-「系統還原」-「新增一個還原點」(最好以當時的日期作為還原點的名字)

6.開啟「我的電腦」-右鍵點系統碟-「內容」-「清理磁碟」-「其他選項」-按下系統還原一欄裡的「清理」-選項「是」-ok了

7.在各種軟硬體安裝妥當之後,其實XP需要更新文件的時候就很少了。移除系統備份檔案吧:開始→執行→sfc.exe /purgecache近3xxM。(該指令的作用是立即清除「Windows 文件保護「文件高速快取,解壓縮出其所佔據的空間)

8.刪掉\windows\system32\dllcache下dll檔(減去200——300mb),這是備用的dll檔, 只要你已拷貝了安裝文件,完全可以這樣做。

9.刪除備份的硬體驅動程式:
XP會自動制作備份硬體的驅動程式,但在硬體的驅動安裝正確後,一般變動硬體的可能性不大,所以也可以考慮將這個制作備份移除,文件位於\windows\driver cache\i386目錄下,名稱為driver.cab,你直接將它移除就可以了,通常這個文件是74M。

10.移除不用的輸入法:
對很多網友來說,Windows XPt系統原有的的輸入法並不全部都合適自己的使用,比如IMJP8_1 日文輸入法、IMKR6_1 韓文輸入法這些輸入法,如果用不著,我們可以將其移除。輸入法位於\windows\ime\資料夾中,全部佔用了88M的空間。

11.昇級完成發現windows\多了許多類似$NtUninstallQ311889$這些目錄,都幹掉吧,1x-3xM

12.刪除\windows\help目錄下的所有檔案,這個是windows的支援說明,如果你沒有用到可以放心刪除。

13.關閉系統還原:
系統還原功能使用的時間一長,就會佔用大量的硬碟空間。因此有必要對其進行手動式設定,以減少硬碟佔用量。開啟「系統內容「對話視窗,選項「系統還原「選項,選項「在所有驅動器上關閉系統還原「複選框以關閉系統還原。也可僅對系統所在的磁牒或分區設定還原。先選項系統所在的分區,按下「組態「按鈕,在彈出的對話視窗中取消「關閉這個驅動器的系統還原「選項,並可設定用於系統還原的磁牒空間大小。

14.關閉休眠功能:
開啟「控制台「,雙按「電源選項「,在彈出的「電源選項內容「對話視窗中選項「休眠「選擇項,取消「啟用休眠「複選框。

15.卸載不常用元件:
XP預設給操作系統安裝了一些系統元件,而這些元件有很大一部分是你根本不可能用到的,可以在「增加/移除Windows元件「中將它們卸載。但其中有一些元件XP預設是隱藏的,在「增加/移除Windows 元件「中找不到它們,這時可以這樣操作:
用記事本開啟\windows\inf\sysoc.inf這個文件,用搜尋/取代功能把文件中的「hide「字串全部取代為空。這樣,就把所有元件的隱藏內容都去掉了,儲存碟結束後再執行「增加-刪除程式「,就會看見多出不少你原來看不見的選項,把其中那些你用不到的元件刪掉(記住儲存碟的時候要儲存為sysoc.inf,而不是預設的sysoc.txt),如Internat信使服務、傳真服務、Windows messenger,碼表等,大約可騰出近50MB的空間。

16.清除系統臨時文件:
系統的臨時文件一般存放在兩個位置中:一個Windows安裝目錄下的Temp資料夾;另一個是x:\Documents and Settings\「用戶名「\Local Settings\Temp資料夾(Y:是系統所在的分區)。這兩個位置的文件均可以直接移除。

17.清除Internet臨時文件:
定期移除上網時產生的大量Internet臨時文件,將節省大量的硬碟空間。
開啟IE瀏覽器,從「工具「功能表中選項「Internet選項「,在彈出的對話視窗中選項「一般「選擇項,在「Internet臨時文件「欄中按下「移除文件「按鈕,並在彈出「移除文件「對話視窗,選「移除所有離線內容「複選框,按下「確定「按鈕。

18.清除預讀文件:
Windows XP的預讀設定雖然可以提高系統速度,但是使用一段時間後,預讀資料夾裡的文件數量會變得相當龐大,導致系統搜尋花費的時間變長。而且有些應用程式會產生死連接文件,更加重了系統搜尋的負擔。所以,應該定期移除這些預讀文件。預計文件存放在Windows XP系統檔案夾的Prefetch資料夾中,該檔案夾下的所有文件均可移除。

19.壓縮NTFS驅動器、文件或資料夾:
如果你的硬碟採用的是NTFS文件系統,空間實在緊張,還可以考慮啟用NTFS的壓縮功能。右擊要壓縮的驅動器-「內容「-「一般「-「壓縮磁牒以節省磁牒空間「,然後按下「確定「, 在「驗證內容更改「中選項需要的選項。這樣可以節省約20% 的硬碟空間。在壓縮C碟的時候,最好在安全模式下壓縮,這樣效果要好一些。

20.關閉華醫生Dr.Watson:
要關閉Dr.Watson可開啟註冊表編輯器,找到「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\ CurrentVersion\AeDebug「分支,雙按其下的Auto鍵值名稱,將其「數值資料「改為0,最後按F5重新整理使設定生效,這樣就取消它的執行了。也在「開始「-〉「執行「中輸入「drwtsn32「指令,或者「開始「-〉「程序「-〉「附件「-〉「系統工具「-〉「系統資訊「-〉「工具「-〉「Dr Watson「,彈出系統裡的華醫生Dr.Watson ,只保留「轉儲全部執行緒上下文「選項,否則一旦程式出錯,硬碟會讀很久,並佔用大量空間。如以前有此情況,請搜尋user.dmp文件,移除後可節省幾十MB空間。

21.關閉遠端桌面:
「我的電腦「-〉「內容「-〉「遠端「,「遠端桌面「裡的「允許用戶遠端連線到這台電腦「勾去掉。

22.取消XP對ZIP支持:
Windows XP在預設情況下開啟了對zip文件支持,這要佔用一定的系統資源,可選項「開始→執行「,在「執行「對話視窗中按鍵輸入「regsvr32 /u zipfldr.dll「,Enter鍵驗證即可取消XP對ZIP解壓縮的支持,從而節省系統資源。

23.關閉錯誤報告:
當應用程式出現錯誤時,會彈出傳送錯誤報告的視窗,其實這樣的錯誤報告對普通用戶而言幾乎沒有任何意義,關閉它是明智的選項。在「系統內容「對話視窗中選項「進階「選擇項,按下「錯誤報告「按鈕,在彈出的「錯誤匯報「對話視窗中,選項「禁用錯誤匯報「單選項,最後按下「確定「即可。另外我們也可以從群組原則中關閉錯誤報告:從「執行「中按鍵輸入「gpedit.msc「,執行「群組原則編輯器「,展開「電腦設定→管理範本→系統→錯誤報告功能「,雙按右邊設定欄中的「報告錯誤「,在彈出的「內容「對話視窗中選項「已禁用「單選框即可將「報告錯誤「禁用。

24.關掉不用的設備:
Windows XP總是盡可能為電腦的所有設備安裝驅動程式並進行管理,這不僅會減慢系統啟動的速度,同時也造成了系統資源的大量佔用。針對這一情況,你可在 裝置管理員中,將PCMCIA卡、調製解調器、紅外線設備、列印機連接阜(LPT1)或者串列阜(COM1)等不常用的設備停用,方法是雙按要停用的設備,在其內容對話視窗中 的「一般「選擇項中選項「不要使用這個設備(停用)「。在重新啟動設定即可生效,當需要使用這些設備時再從裝置管理員中啟用它們。

25.定期清理系統還原點:
開啟清理磁碟,選項其他選項-〉清理系統還原點,點擊清理。

26.移除不需要的程式:
我的電腦 --> 控制台 --> 新增或移除程式。

27.其它最佳化:
a. 將應用軟體裝在其它硬碟(不要安裝在系統碟下,這對重裝系統也有好處);
b. 將「我的文件「資料夾都轉到其他分區:在桌面的「我的文件「圖示上是右擊滑鼠,選項「內容「-〉「移動「 ;
c. 將IE臨時資料夾都轉到其他分區:開啟IE瀏覽器,選項「工具「-〉「internet選項「-〉「一般「-〉「設定「-〉「移動資料夾「;
d. 把虛擬記憶體也轉到其它硬碟;
e. 把pagefile.sys文件都指向一個地方:控制台→系統→效能—進階→虛擬記憶體→更改,注意要點「設定「才會生效;
f. 在桌面的「我的電腦「圖示上是右擊滑鼠,選項「內容「-〉「進階-效能設定「-〉「進階-虛擬記憶體「,調至330-720。而且定時清理。

關閉Windows的hiberfil.sys 和 pagefile.sys





參考
http://dreamyeh.pixnet.net/blog/post/28462639-%5B%E6%8A%80%E8%A1%93%5D-%E9%97%9C%E9%96%89windows7%E7%9A%84hiberfil.sys-%E5%92%8C-pagefile.sys


hiberfil.sys  是休眠用

輸入指令   powercfg -h off   即可關閉




 pagefile.sys
是虛擬記憶體

(1) 到 [控制台]、[系統及安全性]、[系統]
(2) 點選左邊 [進階系統設定]
(3) 出現 [系統內容] 視窗,切換至 [進階] 索引標籤
(4) 在 [效能] 群組中,點選 [設定]
(5) 出現 [效能選項] 視窗,切換至 [進階] 索引標籤
(6) 在 [虛擬記憶體] 群組中,按 [變更]。
(7) 你可以選擇「自訂大小」,根據你的需求配置虛擬記憶體。也可以勾選 [沒有分頁檔],按 [確定] 關閉 pagefile.sys 分頁檔。

2018年10月24日 星期三

AutoHotkey 切換桌面指令


安裝熱鍵軟體 AutoHotkey


在WIN10環境下快速切換桌面


PgUp::Send ^#{Left}
PgDn::Send ^#{Right}
MButton & LButton::Send ^#{Left}      //滑鼠中鍵+左or右鍵
MButton & RButton::Send ^#{Right}
^Lwin::Send #`t             //右邊ctrl + win


 

MangoHost Copyright © 2009 Cookiez is Designed by Ipietoon for Free Blogger Template