คำถามติดแท็ก visual-c++

Microsoft Visual C ++ เป็นคอมไพเลอร์ C, C ++ และ C ++ / CLI สำหรับ Windows เวอร์ชันล่าสุดของคอมไพเลอร์คือ Visual C ++ 2019 คอมไพเลอร์รองรับภาษาต่อไปนี้: C (รองรับ C90 และ C99 และ C11 ส่วนใหญ่ของมาตรฐาน ISO C ++ ใน Visual Studio 2019); C ++ (รองรับฟีเจอร์ C ++ 11, C ++ 14 และ C ++ 17 ส่วนใหญ่และฟีเจอร์ C ++ 20 บางส่วนใน Visual Studio 2019) C ++ / CLI (ให้การทำงานร่วมกันกับภาษา. NET เช่น C #)

6
ฉันจะกำหนดเส้นทางไปยังไฟล์ DLL ใน Visual Studio ได้อย่างไร
ฉันพัฒนาแอปพลิเคชันที่ขึ้นอยู่กับไฟล์ DLL เมื่อฉันดีบักแอปพลิเคชันของฉันแอปพลิเคชันจะบ่นว่า: "โปรแกรมนี้ไม่สามารถเริ่มได้เนื่องจากไม่พบ xxx.dll" ดังนั้นฉันต้องคัดลอกไฟล์ DLL ลงในไดเร็กทอรีเดียวกับไฟล์. vcproj ของฉัน มีวิธีตั้งค่าโปรเจ็กต์เพื่อค้นหาไฟล์ DLL ใน (โดยเฉพาะอย่างยิ่ง) พา ธ สัมพัทธ์หรือ (ไม่ต้องการ) บางพา ธ สัมบูรณ์? แนวคิดที่คล้ายกันกับวิธีที่เราตั้งค่ารวมและเส้นทางไลบรารีในการตั้งค่าโครงการ ฉันหมายถึงเมื่อฉันดีบักแอปพลิเคชันของฉัน (กดปุ่มF5) ข้อผิดพลาดข้างต้นจะปรากฏขึ้น

8
Visual C ++: จะปิดใช้งานคำเตือนตัวเชื่อมโยงเฉพาะได้อย่างไร
ฉันใช้ไลบรารีจาก CGAL ซึ่งในระหว่างขั้นตอนการเชื่อมโยงของการคอมไพล์โค้ดของฉันสร้างคำเตือนการเชื่อมโยงจำนวนมากในแบบฟอร์มนี้: warning LNK4099: PDB 'vc80.pdb' was not found with 'gmp-vc80-mt-sgd.lib' or at 'vc80.pdb'; linking object as if no debug info ฉันจะปิดคำเตือนตัวเชื่อมโยงเฉพาะนี้ภายใต้ Visual C ++ / Studio 2008 ได้อย่างไร โปรดทราบว่าฉันไม่มีการควบคุมใด ๆ ในไลบรารีภายนอก (CGAL) ที่ฉันใช้อยู่ ฉันไม่สามารถ / ไม่ต้องการที่จะคอมไพล์ห้องสมุดภายนอกใหม่ ดังนั้นจำเป็นต้องแก้ไขข้อความในตอนท้ายของฉัน

23
เหตุใดข้อผิดพลาดร้ายแรง“ LNK1104: ไม่สามารถเปิดไฟล์ 'C: \ Program.obj'” เกิดขึ้นเมื่อฉันรวบรวมโปรเจ็กต์ C ++ ใน Visual Studio
ฉันได้สร้างโปรเจ็กต์ C ++ ใหม่ใน Visual Studio 2008 ยังไม่มีการเขียนโค้ด มีการเปลี่ยนแปลงการตั้งค่าโปรเจ็กต์เท่านั้น เมื่อฉันรวบรวมโครงการฉันได้รับข้อผิดพลาดร้ายแรงต่อไปนี้: ข้อผิดพลาดร้ายแรง LNK1104: ไม่สามารถเปิดไฟล์ 'C: \ Program.obj'
117 visual-c++  linker 

9
วิธีดูแอสเซมบลีที่อยู่เบื้องหลังโค้ดโดยใช้ Visual C ++
ฉันกำลังอ่านคำถามอื่นเกี่ยวกับประสิทธิภาพของโค้ดสองบรรทัดและ OP บอกว่าเขาดูการประกอบด้านหลังโค้ดและทั้งสองบรรทัดก็เหมือนกันในการประกอบ นอกเหนือจากการย่อยแล้วฉันจะดูรหัสแอสเซมบลีที่สร้างขึ้นเมื่อคอมไพล์โปรแกรมได้อย่างไร ฉันใช้ Visual C ++ ของ Microsoft แต่ฉันต้องการทราบด้วยว่าเป็นไปได้หรือไม่ที่จะดูแอสเซมบลีที่อยู่เบื้องหลังโค้ดที่เขียนด้วย Visual Basic ดังนั้นฉันจะดูรหัสแอสเซมบลีที่อยู่เบื้องหลังโปรแกรมที่เขียนด้วยภาษาระดับสูงกว่าเช่น C ++ และ Visual Basic ได้อย่างไร

10
ปิดใช้งานข้อผิดพลาดคำเตือนเดียว
มีวิธีปิดการใช้งานคำเตือนเพียงบรรทัดเดียวในไฟล์ cpp ด้วย visual studio หรือไม่? ตัวอย่างเช่นหากฉันจับข้อยกเว้นและไม่ได้จัดการฉันได้รับข้อผิดพลาด 4101 (ตัวแปรภายในเครื่องที่ไม่ได้อ้างอิง) มีวิธีละเว้นสิ่งนี้ในฟังก์ชันนั้นหรือไม่ แต่รายงานในหน่วยคอมไพล์หรือไม่ ในขณะนี้ฉันวางไว้#pragma warning (disable : 4101)ที่ด้านบนสุดของไฟล์ แต่เห็นได้ชัดว่ามันปิดสำหรับทั้งหน่วย


3
อะไรคือความแตกต่างพื้นฐานระหว่าง MFC และ ATL?
สมมติว่าฉันกำลังเพียงใช้พวกเขาสำหรับ "ปกติ" โปรแกรม GUI (ไม่ COM ไม่มี ActiveX ไม่มีอะไรแฟนซี) สิ่งที่เป็นความแตกต่างพื้นฐานฉันจะเห็นระหว่าง ATL และ MFC เพื่อช่วยฉันคิดออกที่หนึ่งที่จะใช้งานหรือไม่ ฉันได้ทำการค้นหาบนเว็บแล้ว แต่ในที่สุดก็ไม่มีคำตอบใดที่ตอบคำถามของฉันได้เลย: http://msdn.microsoft.com/en-us/library/bk8ytxz5(v=vs.80).aspx : "ATL เป็นวิธีที่ง่ายและรวดเร็วในการสร้างคอมโพเนนต์ COM ใน C ++ และรักษาขนาดเล็กใช้ ATL เพื่อสร้างตัวควบคุมหากคุณไม่ต้องการฟังก์ชันในตัวทั้งหมดที่ MFC มีให้โดยอัตโนมัติ" ไม่ตอบคำถามของฉันจริงๆเพราะ: ฉันไม่ได้ทำงานกับ COM นี่หมายความว่า MFC ไม่เร็วหรือ? ทำไม / อย่างไร "MFC ช่วยให้คุณสร้างแอปพลิเคชันเต็มรูปแบบตัวควบคุม ActiveX และเอกสารที่ใช้งานอยู่หากคุณได้สร้างตัวควบคุมด้วย MFC แล้วคุณอาจต้องการพัฒนาต่อใน MFC เมื่อสร้างตัวควบคุมใหม่ให้พิจารณาใช้ ATL หากคุณไม่ต้องการ ฟังก์ชันการทำงานในตัวทั้งหมดของ MFC …
110 c++  visual-c++  mfc  atl 

20
ตรวจสอบว่ามีการติดตั้ง Visual C ++ Redistributable สำหรับ Visual Studio 2012 หรือไม่
จะตรวจสอบได้อย่างไรว่ามีการติดตั้ง Visual C ++ Redistributable สำหรับ Visual Studio 2012 หรือไม่ ฉันลองใช้ Google แล้วและไม่มีใครถามคำถามนี้เลยแปลกใจ!
109 visual-c++ 

5
LPCSTR, LPCTSTR และ LPTSTR
สิ่งที่แตกต่างระหว่างLPCSTR, LPCTSTRและLPTSTR? ทำไมเราต้องทำสิ่งนี้เพื่อแปลงสตริงเป็นตัวแปรLV/ _ITEMโครงสร้างpszText: LV_DISPINFO dispinfo; dispinfo.item.pszText = LPTSTR((LPCTSTR)string);
109 c++  windows  visual-c++  mfc 

4
การส่งออกฟังก์ชันจาก DLL ด้วย dllexport
ฉันต้องการตัวอย่างง่ายๆในการส่งออกฟังก์ชันจาก C ++ Windows DLL ฉันต้องการดูส่วนหัว.cppไฟล์และ.defไฟล์ (ถ้าจำเป็นจริงๆ) ฉันต้องการชื่อที่ส่งออกจะได้รับการประดับประดา ฉันต้องการใช้รูปแบบการโทรที่เป็นมาตรฐานที่สุด ( __stdcall?) ฉันต้องการใช้__declspec(dllexport)และไม่ต้องใช้.defไฟล์ ตัวอย่างเช่น: //header extern "C" { __declspec(dllexport) int __stdcall foo(long bar); } //cpp int __stdcall foo(long bar) { return 0; } ฉันพยายามหลีกเลี่ยงตัวเชื่อมโยงที่เพิ่มขีดล่างและ / หรือตัวเลข (จำนวนไบต์?) ให้กับชื่อ ฉันไม่เป็นไรที่ไม่สนับสนุนdllimportและdllexportใช้ส่วนหัวเดียวกัน ฉันไม่ต้องการข้อมูลใด ๆ เกี่ยวกับการเอ็กซ์พอร์ตเมธอดคลาส C ++ เพียงแค่ฟังก์ชันโกลบอลสไตล์ c อัปเดต ไม่รวมหลักการเรียก (และการใช้งานextern "C") ให้ชื่อส่งออกตามที่ฉันต้องการ …

12
Visual Studio รองรับมาตรฐาน C / C ++ ใหม่หรือไม่
ฉันอ่านเกี่ยวกับ C99 และ C ++ 11 มาเรื่อย ๆ และสิ่งที่น่ารักเหล่านี้ทั้งหมดที่เพิ่มเข้ามาในมาตรฐานภาษาที่อาจจะดีในการใช้สักวันหนึ่ง อย่างไรก็ตามขณะนี้เราไม่ได้อยู่ในดินแดนแห่งการเขียน C ++ ใน Visual Studio จะมีการเพิ่มสิ่งใหม่ ๆ ในมาตรฐานลงใน Visual Studio หรือไม่หรือ Microsoft สนใจที่จะเพิ่มตัวแปร C # ใหม่เพื่อทำสิ่งนั้น แก้ไข: นอกจากคำตอบที่ยอมรับแล้วฉันยังพบบล็อกของทีม Visual C ++: http://blogs.msdn.com/vcblog/ และโดยเฉพาะโพสต์นี้อยู่ในนั้น: https://web.archive.org/web/20190109064523/https://blogs.msdn.microsoft.com/vcblog/2008/02/22/tr1-slide-decks/ มีประโยชน์มาก. ขอบคุณ!

6
วิธีทำให้ Visual Studio คัดลอกไฟล์ DLL ไปยังไดเร็กทอรีเอาต์พุต
ฉันมีโปรเจ็กต์ Visual Studio C ++ ที่อาศัยไฟล์ DLL ภายนอก ฉันจะทำให้ Visual Studio คัดลอกไฟล์ DLL นี้ลงในไดเร็กทอรีเอาต์พุต (debug / release) โดยอัตโนมัติได้อย่างไรเมื่อฉันสร้างโครงการ

2
รหัส VC ++ DOM สามารถเข้าถึงได้จาก VS addons หรือไม่
Visual Studio IntelliSense สำหรับ VC ++ ประกอบด้วยตัวแยกวิเคราะห์ EDG C ++ ที่ "สมบูรณ์" (ยังใช้โดย Intel และอื่น ๆ ) เนื่องจาก C # Code DOM สามารถเข้าถึง addons ได้ (แก้ไขฉันถ้าฉันผิด) C ++ Code DOM จึงสามารถเข้าถึงได้หรือไม่ สิ่งนี้สามารถใช้วิเคราะห์โครงการ VC ++ แบบเปิดภายในสภาพแวดล้อม VS ได้หรือไม่

11
ข้อผิดพลาดร้ายแรง:“ ไม่มีสถาปัตยกรรมเป้าหมาย” ใน Visual Studio
เมื่อฉันพยายามรวบรวมโครงการ c ++ โดยใช้ Visual Studio 2010 ในโหมด Win32 หรือ x64 ฉันได้รับข้อผิดพลาดต่อไปนี้: >C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture" คำจำกัดความของตัวประมวลผลก่อนหน้าของฉันกล่าวว่า WIN32; _DEBUG; _CONSOLE;% (PreprocessorDefinitions) อะไรเป็นสาเหตุของข้อผิดพลาดนี้และฉันจะแก้ไขได้อย่างไร // winnt.h: lines 127-136, MSVS says this is an inactive preprocessor block #if defined(_WIN64) #if defined(_AMD64_) #define PROBE_ALIGNMENT( _s ) …


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.