自動切換剪貼板路徑中反斜杠為正斜杠

有時候需要將我們常見的win全路徑中反斜杠為正斜杠,每次用記事本,編輯替換非常麻煩,于是寫了這個工具,能自動修改剪貼板中的數據,只需要運行一下即可。

實現效果,將類似于下面的路徑:

C:\Users\autumoon\Desktop\ChangeSlash\自動切換剪貼板中的斜杠.txt

更改成:

C:/Users/autumoon/Desktop/ChangeSlash/自動切換剪貼板中的斜杠.txt

直接上代碼:

新建一個終端程序即可,后面會更改成窗口以實現隱藏黑框的效果。


#include <windows.h>
#include <atlstr.h>CString ConvertBackslashToSlash(CString& strPath)
{for (int i = 0; i < strPath.GetLength(); ++i){if (strPath[i] == _T('\\')){strPath.SetAt(i, _T('/'));}}return strPath;
}int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR     lpCmdLine,int       nCmdShow)
{char* buffer = nullptr;CString strFromClipboard;if (OpenClipboard(NULL)){HANDLE hData = GetClipboardData(CF_TEXT);char* buffer = (char*)GlobalLock(hData);strFromClipboard = buffer;int nLen = strFromClipboard.GetLength();if (nLen > 0){if (strFromClipboard.Find(_T(":\\")) != -1){EmptyClipboard();ConvertBackslashToSlash(strFromClipboard);size_t cbStr = (strFromClipboard.GetLength() + 1) * sizeof(TCHAR);HGLOBAL hData = GlobalAlloc(GMEM_MOVEABLE, cbStr);memcpy_s(GlobalLock(hData), cbStr, strFromClipboard.LockBuffer(), cbStr);strFromClipboard.UnlockBuffer();UINT nFormat = (sizeof(TCHAR) == sizeof(WCHAR) ? CF_UNICODETEXT : CF_TEXT);::SetClipboardData(nFormat, hData);}}GlobalUnlock(hData);CloseClipboard();}return 0;
}

下面是隱藏黑窗口的方法:

要將命令行程序改為窗口程序并隱藏黑框,可以采用下面的方法:

使用WinMain入口點(推薦)

  1. 將main改為WinMain
  2. 在項目屬性中設置子系統為Windows
  3. 添加/SUBSYSTEM:WINDOWS鏈接器選項

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81896.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81896.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81896.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【時時三省】Python 語言----文件

目錄 1,文件打開 2, 文件關閉 3, 文件寫入 4, 文件讀出 5, 文件定位 6, 文件重命名 7, 復制文件 山不在高,有仙則名。水不在深,有龍則靈。 ----CSDN 時時三省 1,文件打開 file = open(file, mode, buffering, encoding, errors, newline, closefd, opener) 2, 文…

React 個人筆記 Hooks編程

作用 配合函數式編程&#xff0c;保證在不產生類的時候完成一個整體的組件 常用組件 useStateuseContextuseReduceruseEffectuseMemouseCallback 前三個值為自變量 后三者為因變量 前三者相當于其他編程函數的變量聲明&#xff0c;而后三者相當于對變量進行了(if now ! pr…

logits是啥、傅里葉變換

什么是logtis&#xff1f; 在深度學習的上下文中&#xff0c;logits 就是一個向量&#xff0c;下一步通常被投給 softmax/sigmoid 的向量。。 softmax的輸出是分類任務的概率&#xff0c;其輸入是logits層。 logits層通常產生-infinity到 infinity的值&#xff0c;而softmax層…

Adobe Illustrator學習備忘

1.移動畫板&#xff1a;需按住空格鍵加鼠標一塊才能拖動 2.放大縮小畫板&#xff1a;按住Alt鍵加鼠標滾輪 3.撤回&#xff1a;CtrlZ 4.鋼筆練習網站&#xff1a;The Bzier Game

【初識】內網滲透——基礎概念,基本工具使用

目錄 一、域&#xff0c;工作組&#xff0c;域控制器&#xff0c;活動目錄相關概念&#xff1a; 域環境&#xff1a; 工作組&#xff1a; 域控制器DC&#xff1a; 活動目錄AD&#xff1a; 二、內網的基本場景&#xff1a; 三、內網滲透基本測試方案&#xff1a; #案例1一基本信…

remove_const的工作原理及c++的類型推導

author: hjjdebug date: 2025年 05月 21日 星期三 12:51:57 CST descrip: remove_const的工作原理及c的類型推導 文章目錄 1. 簡單的程序代碼.2.std::remove_const_t 到底是怎樣工作的&#xff1f;2.1 測試代碼2.2 類型推導的調試手段.2.2.1 給類模板添加成員函數,讓它打印信息…

人臉識別,使用 deepface + api + flask, 改寫 + 調試

1. 起因&#xff0c; 目的&#xff0c; 感受: github deepface 這個項目寫的很好&#xff0c; 繼續研究使用這個項目&#xff0c;改寫 api。增加一個前端 flask app 2. 先看效果 3. 過程: 大力改寫原始項目中 api 這部分的代碼&#xff0c; 原始項目的文件結構太繁雜了: 我把…

三維表面輪廓儀的維護保養是確保其長期穩定運行的關鍵

三維表面輪廓儀是一種高精度測量設備&#xff0c;用于非接觸式或接觸式測量物體表面的三維形貌、粗糙度、臺階高度、紋理特征等參數。其主要基于光學原理進行測量。它利用激光或其他光源投射到被測物體表面&#xff0c;通過接收反射光或散射光&#xff0c;結合計算機圖像處理技…

Lambda表達式的高級用法

今天來分享下Java的Lambda表達式&#xff0c;以及它的高級用法。 使用它可以提高代碼的簡潔度&#xff0c;使代碼更優雅。 一、什么是lambda表達式 Lambda 表達式是 Java 8 引入的特性&#xff0c;用于簡化匿名內部類的語法&#xff0c;使代碼更簡潔&#xff0c;尤其在處理函…

31-35【動手學深度學習】深度學習硬件

1. CPU和GPU 1.1 CPU CPU每秒鐘計算的浮點運算數為0.15&#xff0c;GPU為12。GPU的顯存很低&#xff0c;16GB&#xff08;可能32G封頂&#xff09;&#xff0c;CPU可以一直插內存。 左邊是GPU&#xff08;只能做些很簡單的游戲&#xff0c;視頻處理&#xff09;&#xff0c;中…

【MySQL成神之路】MySQL常見命令匯總

目錄 MySQL常用命令總結 1. 數據庫操作 2. 表操作 3. 數據操作&#xff08;DML&#xff09; 4. 索引與優化 5. 用戶與權限管理 6. 備份與恢復 7. 事務控制 8. 常用函數 9. 系統狀態與日志 總結 MySQL常用命令總結 MySQL作為最流行的關系型數據庫之一&#xff0c;提供…

Dify的大語言模型(LLM) AI 應用開發平臺-本地部署

前言 今天閑著&#xff0c;搗鼓一下 Dify 這個開源平臺&#xff0c;在 mac 系統上&#xff0c;本地部署并運行 Dify 平臺&#xff0c;下面記錄個人在本地部署Dify 的過程。 Dify是什么&#xff1f; Dify是一個開源的大語言模型&#xff08;LLM&#xff09;應用開發平臺&#…

【論文閱讀】針對BEV感知的攻擊

Understanding the Robustness of 3D Object Detection with Bird’s-Eye-View Representations in Autonomous Driving 這篇文章是發表在CVPR上的一篇文章&#xff0c;針對基于BEV的目標檢測算法進行了兩類可靠性分析&#xff0c;即惡劣自然條件以及敵對攻擊。同時也提出了一…

SonarQube的核心作用與用途

SonarQube作為一個開源的代碼質量管理平臺&#xff0c;致力于持續分析代碼的健康狀態&#xff0c;幫助開發團隊提升代碼質量。以下是其核心作用與用途的詳細說明&#xff1a; 1、靜態代碼分析 SonarQube通過靜態代碼分析技術&#xff0c;自動識別代碼中的潛在問題。它能夠檢測…

AI工程師系列——面向copilot編程

前言 ? 筆者已經使用copilot協助開發有一段時間了,但一直沒有總結一個協助代碼開發的案例,特別是怎么問copilot,按照什么順序問,哪些方面可以高效的生成需要的代碼,這一次,筆者以IP解析需求為例,沉淀一個實踐案例,供大家參考 當然,其實也不局限于copilot本身,類似…

【軟件設計師】知識點簡單整理

文章目錄 數據結構與算法排序算法圖關鍵路徑 軟件工程決策表耦合類型 編程思想設計模式 計算機網絡域名請求過程 數據結構與算法 排序算法 哪些排序算法是穩定的算法?哪些不是穩定的算法,請舉出例子。 穩定排序算法&#xff1a;冒泡排序、插入排序、歸并排序、基數排序、計數…

FastAPI 支持文件下載和上傳

文章目錄 1. 文件下載處理1.1. 服務端處理1.1.1. 下載小文件1.1.2. 下載大文件&#xff08;yield 支持預覽的&#xff09;1.1.3. 下載大文件&#xff08;bytes&#xff09;1.1.4. 提供靜態文件服務1.1.5. 中文文件名錯誤 1.2. 客戶端處理1.2.1. 普通下載1.2.2. 分塊下載1.2.3. …

naive-ui切換主題

1、在App.vue文件中使用 <script setup lang"ts"> import Dashboard from ./views/dashboard/index.vue import { NConfigProvider, NGlobalStyle, darkTheme } from naive-ui import { useThemeStore } from "./store/theme"; // 獲取存儲的主題類…

Kotlin 協程 (三)

協程通信是協程之間進行數據交換和同步的關鍵機制。Kotlin 協程提供了多種通信方式&#xff0c;使得協程能夠高效、安全地進行交互。以下是對協程通信的詳細講解&#xff0c;包括常見的通信原語、使用場景和示例代碼。 1.1 Channel 定義&#xff1a;Channel 是一個消息隊列&a…

使用SQLite Studio導出/導入SQL修復損壞的數據庫

使用SQLite Studio導出/導入SQL修復損壞的數據庫 使用Zotero時遇到了數據庫損壞&#xff0c;在軟件中寸步難行&#xff0c;遂嘗試修復數據庫。 一、SQLite Studio簡介 SQLite Studio是一款專為SQLite數據庫設計的免費開源工具&#xff0c;支持Windows/macOS/Linux。相較于其…