Qt找不到windows API報錯:error: LNK2019: 無法解析的外部符號 __imp_OpenClipboard

筆者在開發中出現的bug完整報錯如下:

spcm_ostools_win.obj:-1: error: LNK2019: 無法解析的外部符號 __imp_OpenClipboard,函數 "void __cdecl spcmdrv::vCopyToClipboard(char const *,unsigned __int64)" (?vCopyToClipboard@spcmdrv@@YAXPEBD_K@Z) 中引用了該符號

依然是常見的鏈接不到宏定義/函數的問題,但是這次不同的是,報錯的符號來自:C:\Program Files (x86)\Windows Kits\10\Include\10.0.20348.0\um\WinUser.h

也就是windows SDK下的頭文件和庫。

分析:

1. 通常來講出現這個問題首先考慮的原因是編譯器的選擇,因為這是Visual Studio配置環境時要下載的windows sdk組件,也就是說,只有在MSVC模式下才能用上,MinGW是Qt自帶的編譯器,是沒有這個套件的。所以應該先檢查當前的構建套件是不是有效的MSVC20XX。

2. 然后應該檢查windows kits的 Include、Lib、bin 文件是不是添加到了系統的環境變量里

排查了這兩個問題以后,報錯依然沒有消失,說明編譯器依然沒有找到對應的windows API,筆者嘗試使用手動添加LIB和INCLUDE 路徑的方式,試圖讓編譯器找到符號對應的頭文件,語句如下:

win32 {INCLUDEPATH += "C:/Program Files (x86)/Windows Kits/10/Include/10.x.x.x/ucrt"INCLUDEPATH += "C:/Program Files (x86)/Windows Kits/10/Include/10.x.x.x/um"# 根據需要添加其他目錄
}win32 {LIBS += -L"C:/Program Files (x86)/Windows Kits/10/Lib/10.x.x.x/ucrt/x64"LIBS += -L"C:/Program Files (x86)/Windows Kits/10/Lib/10.x.x.x/um/x64"# 根據需要添加其他目錄或特定庫文件
}

并無卵用......

經多次失敗經驗證明,試圖通過添加上述語句完成添加外部庫,從而讓編譯器找到庫文件,完全行不通!!!!!!編譯器不會報錯,但是也不會找到里面的lib文件!!!無論是什么庫!

這個符號屬于Windows API的一部分,通常與用戶32庫(User32.lib)相關聯。只需要在.pro文件中,增加下述語句,就可以了。

win32 {LIBS += -lUser32
}

對應地,在使用這個符號的代碼文件中,需要引入windows頭文件

#include <windows.h>

清除之前的構建,重新構建工程,報錯就消失了

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

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

相關文章

4.8.4 利用Spark SQL實現分組排行榜

在本次實戰中&#xff0c;我們的目標是利用Spark SQL實現分組排行榜&#xff0c;特別是計算每個學生分數最高的前3個成績。任務的原始數據由一組學生成績組成&#xff0c;每個學生可能有多個成績記錄。我們首先將這些數據讀入Spark DataFrame&#xff0c;然后按學生姓名分組&am…

[PyMySQL]

掌握pymysql對數據庫實現增刪改查數據庫工具類封裝,數據庫操作應用場景數據庫操作應用場景 校驗測試數據 : 刪除員工 :構造測試數據 : 測試數據使用一次就失效,不能重復使用 : 添加員工(is_delete)測試數據在展開測試前無法確定是否存在 : 查詢,修改,刪除員工操作步驟:!~~~~~~~…

cs224w課程學習筆記-第12課

cs224w課程學習筆記-第12課 知識圖譜問答 前言一、問答類型分類二、路徑查詢(Path queries)2.1 直觀查詢方法2.2 TransE 擴展2.3 TransE 能力分析 三、連詞查詢(conjunctive queries)3.1 Query2box 原理1)、投影2)、交集查詢&#xff08;AND 操作)3)、聯合查詢&#xff08;OR 操…

AI任務相關解決方案2-基于WOA-CNN-BIGRU-Transformer模型解決光纖通信中的非線性問題

文章目錄 1. 項目背景與研究意義1.1 光纖通信中的非線性問題1.2 神經網絡在光纖非線性補償中的應用現狀 2. 現有模型 CNN-BIGRU-attention 分析2.1 模型架構與工作原理2.2 模型性能評估與局限性 3. 新模型優化方案3.1 WOA算法原理與優勢3.2 WOA-CNN-BIGRU-MHA模型構建3.3 WOA-C…

HTTP Accept簡介

一、HTTP Accept是什么 HTTP協議是一個客戶端和服務器之間進行通信的標準協議&#xff0c;它定義了發送請求和響應的格式。而HTTP Accept是HTTP協議中的一個HTTP頭部&#xff0c;用于告訴服務器請求方所期望的響應格式。這些格式可以是媒體類型、字符集、語言等信息。 HTTP A…

39-居住證管理系統(小程序)

技術棧: springBootVueMysqlUni-app 功能點: 群眾端 警方端 管理員端 群眾端: 1.首頁: 輪播圖展示、公告信息列表 2.公告欄: 公告查看及評論 3.我的: 聯系我們: 可在線咨詢管理員問題 實時回復 居住證登記申請 回執單查看 領證信息查看 4.個人中心: 個人信息查看及修改…

鴻蒙OSUniApp 開發的滑動圖片墻組件#三方框架 #Uniapp

UniApp 開發的滑動圖片墻組件 前言 在移動應用中&#xff0c;圖片墻是一種極具視覺沖擊力的內容展示方式&#xff0c;廣泛應用于相冊、商品展示、社交分享等場景。一個優秀的滑動圖片墻組件不僅要支持流暢的滑動瀏覽&#xff0c;還要兼容不同設備的分辨率和性能&#xff0c;尤…

碰一碰系統源碼搭建==saas系統

搭建“碰一碰”系統&#xff08;通常指基于NFC或藍牙的短距離交互功能&#xff09;的源碼實現&#xff0c;需結合具體技術棧和功能需求。以下是關鍵步驟和示例代碼&#xff1a; 技術選型 NFC模式&#xff1a;適用于Android/iOS設備的近場通信&#xff0c;需處理NDEF協議。藍牙…

自動駕駛決策規劃框架詳解:從理論到實踐

歡迎來到《自動駕駛決策規劃框架詳解:從理論到實踐》的第二章。在本章中,我們將深入探討自動駕駛系統中至關重要的“大腦”——決策規劃模塊。我們將從基本概念入手,逐步解析主流的決策規劃框架,包括經典的路徑速度解耦方法、工業界廣泛應用的Apollo Planning框架、應對復雜…

服務器定時任務查看和編輯

在 Ubuntu 系統中&#xff0c;查看當前系統中已開啟的定時任務主要有以下幾種方式&#xff0c;分別針對不同類型的定時任務管理方式&#xff08;如 crontab、systemd timer 等&#xff09;&#xff1a; 查看服務器定時任務 一、查看用戶級別的 Crontab 任務 每個用戶都可以配…

小白的進階之路系列之四----人工智能從初步到精通pytorch自定義數據集下

本篇涵蓋的內容 在之前的文章中,我們已經討論了如何獲取數據,轉換數據以及如何準備自定義數據集,本篇文章將涵蓋更加深入的問題,希望通過詳細的代碼示例,幫助大家了解PyTorch自定義數據集是如何應對各種復雜實際情況中,數據處理的。 更加詳細的,我們將討論下面一些內容…

DeepSeek實戰:打造智能數據分析與可視化系統

DeepSeek實戰:打造智能數據分析與可視化系統 1. 數據智能時代:DeepSeek數據分析系統入門 在數據驅動的決策時代,智能數據分析系統正成為企業核心競爭力。本節將使用DeepSeek構建一個從數據清洗到可視化分析的全流程智能系統。 1.1 系統核心功能架構 class DataAnalysisS…

力扣100題---字母異位詞分組

1.字母異位詞分組 給你一個字符串數組&#xff0c;請你將 字母異位詞 組合在一起。可以按任意順序返回結果列表。 字母異位詞 是由重新排列源單詞的所有字母得到的一個新單詞。 方法一&#xff1a;字母排序 class Solution {public List<List<String>> groupAnagr…

使用子查詢在 SQL Server 中進行數據操作

在 SQL Server 中&#xff0c;子查詢&#xff08;Subquery&#xff09;是一種在查詢中嵌套另一個查詢的技術&#xff0c;可以用來執行復雜的查詢、過濾數據或進行數據計算。子查詢通常被用在 SELECT、INSERT、UPDATE 或 DELETE 語句中&#xff0c;可以幫助我們高效地解決問題。…

Flask集成pyotp生成動態口令

Python中的pyotp模塊是一個用于生成和驗證一次性密碼&#xff08;OTP&#xff09;的庫&#xff0c;支持基于時間&#xff08;TOTP&#xff09;和計數器&#xff08;HOTP&#xff09;的兩種主流算法。它遵循RFC 4226&#xff08;HOTP&#xff09;和RFC 6238&#xff08;TOTP&…

觸控精靈 ADB運行模式填寫電腦端IP教程

?ADB模式&#xff0c;如果你手機已經root則可以直接運行&#xff0c;無需安裝電腦端。 ?ADB模式&#xff0c;如果你手機沒有root&#xff0c;那你可以windows電腦下載【極限投屏】軟件&#xff0c;然后你的手機和電腦的網絡要同一個wifi&#xff0c;然后把你電腦的ip地址填寫…

【Python】 -- 趣味代碼 - 佩奇

文章目錄 文章目錄 00 佩奇程序設計框架1. 繪圖設置2. 繪制卡通人物的各個部分3. 主程序總結01 佩奇程序設計00 佩奇程序設計框架 這段代碼使用 turtle 模塊繪制了一個粉色的卡通人物圖像,主要功能包括繪制鼻子、頭、耳朵、眼睛、腮、嘴、身體、手、腳和尾巴等部分。代碼的主…

uniapp-商城-69-shop(2-商品列表,點擊商品展示,商品的詳情, vuex的使用,rich-text使用)

頁面中將我們的數據進行了羅列,對于單個數據的展示,還需要進行開發,這里使用了點擊商品后,進行彈窗展示。 同樣這里用一個組件來進行實現該彈窗的展示。 本文介紹了商品詳情彈窗的實現方案。主要采用Vuex進行狀態管理,通過幾個關鍵組件協同工作: 商品列表組件productItem…

C# Datatable篩選過濾各方式詳解

在C#中&#xff0c;DataTable提供了多種篩選過濾數據的方法&#xff0c;以下是常用的幾種方式及其特點&#xff1a; 1. ?Select方法篩選? 這是最基礎的篩選方式&#xff0c;支持類似SQL的表達式語法 // 單條件篩選 DataRow[] rows dt.Select("Age > 25");// …

計算機網絡中的路由算法:互聯網的“路徑規劃師”

計算機網絡中的路由算法&#xff1a;互聯網的“路徑規劃師” 當你打開瀏覽器&#xff0c;輸入 www.example.com 并敲下回車&#xff0c;數據會從你的電腦出發&#xff0c;穿越一個個路由器&#xff0c;最終抵達目標服務器。這一路上&#xff0c;數據包是怎么知道該走哪條路的&…