คำถามติดแท็ก dll

dynamic-link library (DLL) เป็นโมดูลที่มีฟังก์ชั่นและข้อมูลที่สามารถใช้โดยโมดูลอื่น (แอปพลิเคชันหรือ DLL) เป็นการดำเนินการตามแนวคิดของไลบรารีที่ใช้ร่วมกันของ Microsoft ในระบบปฏิบัติการ Microsoft Windows และ OS / 2

15
การฝัง DLLs ในการปฏิบัติการที่คอมไพล์แล้ว
เป็นไปได้หรือไม่ที่จะฝัง DLL ที่มีอยู่แล้วลงในไฟล์ประมวลผล C # ที่คอมไพล์แล้ว (เพื่อให้คุณมีไฟล์เดียวที่จะเผยแพร่) ถ้าเป็นไปได้คนจะทำยังไงดีล่ะ? โดยปกติแล้วฉันเจ๋งเพียงแค่ออกจาก DLL ภายนอกและให้โปรแกรมติดตั้งจัดการทุกอย่าง แต่มีคนทำงานอยู่สองคนที่ถามฉันและฉันก็ไม่รู้เหมือนกัน
618 c#  .net  dll  merge  linker 

18
ควรใช้ไลบรารีแบบไดนามิกและแบบคงที่เมื่อใด
เมื่อสร้างไลบรารีคลาสใน C ++ คุณสามารถเลือกระหว่างไลบรารี dynamic ( .dll, .so) และ static ( .lib, .a) อะไรคือความแตกต่างระหว่างพวกเขาและเมื่อใดที่เหมาะสมที่จะใช้

4
ความแตกต่างระหว่างวัตถุที่ใช้ร่วมกัน (.so), ไลบรารีแบบคงที่ (.a) และ DLL ของ (.so) หรือไม่
ฉันมีส่วนร่วมในการอภิปรายบางอย่างเกี่ยวกับห้องสมุดใน Linux และต้องการยืนยันบางสิ่ง มันเป็นความเข้าใจของฉัน (โปรดแก้ไขให้ฉันถ้าฉันผิดและฉันจะแก้ไขโพสต์ของฉันในภายหลัง) ว่ามีสองวิธีในการใช้ห้องสมุดเมื่อสร้างแอปพลิเคชัน: สแตติกไลบรารี (ไฟล์. a): ณ เวลาลิงก์สำเนาของไลบรารีทั้งหมดจะถูกใส่ลงในแอปพลิเคชันสุดท้ายเพื่อให้ฟังก์ชั่นภายในไลบรารีพร้อมใช้งานสำหรับแอปพลิเคชันการโทรตลอดเวลา วัตถุที่ใช้ร่วมกัน (ไฟล์. so): ณ เวลาลิงก์วัตถุนั้นจะถูกตรวจสอบกับ API ผ่านไฟล์ส่วนหัว (.h) ที่เกี่ยวข้อง ห้องสมุดไม่ได้ใช้จริงจนกว่ารันไทม์ซึ่งเป็นที่ต้องการ ข้อได้เปรียบที่ชัดเจนของสแตติกไลบรารีคือพวกเขาอนุญาตให้แอปพลิเคชันทั้งหมดอยู่ในตัวเองในขณะที่ประโยชน์ของไลบรารีแบบไดนามิกคือสามารถแทนที่ไฟล์ ".so" (เช่น: ในกรณีที่จำเป็นต้องอัปเดตเนื่องจากความปลอดภัย บั๊ก) โดยไม่ต้องการให้แอปพลิเคชันพื้นฐานทำการคอมไพล์ใหม่ ฉันเคยได้ยินบางคนสร้างความแตกต่างระหว่างวัตถุที่ใช้ร่วมกันและไลบรารีที่เชื่อมโยงแบบไดนามิก (DLL's) แม้ว่าพวกเขาจะเป็นทั้งไฟล์ ".so" ก็ตาม มีความแตกต่างระหว่างวัตถุที่ใช้ร่วมกันและ DLLs เมื่อมันมาถึงการพัฒนา C / C ++ บน Linux หรือระบบปฏิบัติการที่สอดคล้องกับ POSIX อื่น ๆ (เช่น: MINIX, UNIX, QNX, ฯลฯ …
272 c++  c  linux  dll  linker 

14
ปัญหา Windows 7, 64 บิต, DLL
ฉันมีปัญหากับการปฏิบัติการของเรา ฉันใช้งาน C ++ แบบ 32 บิตบนกล่องพัฒนา Windows 7 64 บิตที่มีแอปพลิเคชั่น Microsoft ทั้งหมด (Visual Studio 2008 + 2010, TFS, SDK, Microsoft Office) ... และมันก็ยังทำงานได้ดี ตอนนี้ฉันได้รับการติดตั้งไคลเอนต์ของโปรแกรมเดียวกันและขอให้ทดสอบด้วยการติดตั้ง Windows 7 ที่สะอาด ดังนั้นฉันจึงได้รับ Windows 7 64-bit VMware และอัปเดตเป็น Windows 7 SP 1 (กล่องรุ่นเดียวกับที่นักพัฒนาของฉันกำลังจูน) แต่ในขณะที่ทุกอย่างในกล่องนักพัฒนาซอฟต์แวร์ของฉันใช้ได้โปรแกรมไม่ทำงานกับกล่อง VMware (ทดลอง 30 วัน) x86 Dependency Walkerบอกฉันว่าไฟล์ DLL ต่อไปนี้หายไป: API-MS-WIN-Core-COM-L1-1-0.DLL …
268 windows  dll 

30
System.MissingMethodException: ไม่พบวิธี?
สิ่งที่ครั้งหนึ่งเคยทำงานในแอป asp.net webforms ของฉันตอนนี้โยนข้อผิดพลาดนี้: System.MissingMethodException: ไม่พบวิธีการ DoThisวิธีการที่อยู่ในระดับเดียวกันและมันควรจะทำงาน ฉันมีตัวจัดการทั่วไปเช่น: public class MyHandler: IHttpHandler { public void Processrequest(HttpContext context) { // throws error now System.MissingMethodException: Method not found? this.DoThis(); } public void DoThis() { // } }
245 c#  asp.net  dll  nuget  httphandler 

5
เหตุใด DLLs 64 บิตจึงไปที่ System32 และ DLL 32 บิตไปที่ SysWoW64 บน Windows 64 บิต
ฉันต้องการทราบว่าเมื่อใดที่เราต้องวางไฟล์ไว้ข้างใต้ C: \ Windows \ System32 หรือ C: \ Windows \ SysWOW64 บนระบบ windows 64 บิต ฉันมี DLL สองตัวตัวหนึ่งสำหรับ 32 บิตหนึ่งตัวสำหรับ 64 บิต ฉันคิดว่าฉันวาง DLL แบบ 32 บิตภายใต้ C: \ Windows \ System32 และ DLL 64 บิตภายใต้ C: \ Windows \ SysWOW64 ด้วยความประหลาดใจของฉันมันเป็นวิธีอื่น ๆ ! 32บิตใครไปเป็น C: \ Windows \ …

9
ไฟล์ DLL คืออะไรและทำงานอย่างไร
ไฟล์ DLL ทำงานอย่างไร ดูเหมือนจะมีพวกเขาจำนวนมากที่น่ากลัว แต่ฉันไม่รู้ว่าพวกเขาคืออะไรหรือทำงานอย่างไร ดังนั้นการจัดการกับพวกเขาคืออะไร?
224 windows  winapi  dll 

5
การแก้ไข LNK4098: defaultlib 'MSVCRT' ขัดแย้งกับ
คำเตือนนี้: LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library เป็นคำเตือนทั่วไปใน Visual Studio ฉันต้องการที่จะเข้าใจเหตุผลที่แน่นอนสำหรับมันและวิธีการที่ถูกต้อง (ถ้าทั้งหมด) เพื่อจัดการกับมัน /MDdนี้เกิดขึ้นในการแก้ปัญหาการสร้างรวบรวมกับ โครงการเชื่อมโยงกับสิ่งที่ชอบหน้าต่างVersion.dllและที่ตัวเองเชื่อมโยงกับpdh.dll MSVCRT.dllเห็นได้ชัดว่าฉันไม่มีเวอร์ชันแก้ไขข้อบกพร่องเหล่านี้และไม่สามารถรวบรวมได้ ดังนั้นฉันเพิ่ม/NODEFAULTLIB:MSVCRTเข้าไปในบรรทัดคำสั่งของ linker และมันก็ลบคำเตือนออก แต่สิ่งนี้ทำอะไรได้จริง? และทำไมมันจำเป็น?

5
ไฟล์ DLL และ LIB - คืออะไรและเพราะเหตุใด
ฉันรู้น้อยมากเกี่ยวกับ DLL และ LIB นอกเหนือจากนั้นพวกเขามีรหัสที่จำเป็นสำหรับโปรแกรมเพื่อให้ทำงานได้อย่างถูกต้อง - ไลบรารี แต่ทำไมคอมไพเลอร์จึงสร้างมันขึ้นมา? มันจะง่ายกว่าหรือถ้าจะรวมรหัสทั้งหมดไว้ในการปฏิบัติการเดียว? และอะไรคือความแตกต่างระหว่าง DLL และ LIB?

28
การดำเนินการที่ร้องขอไม่สามารถดำเนินการกับไฟล์ที่มีส่วนที่ผู้ใช้แมปเปิดอยู่
เมื่อใดก็ตามที่ฉันพยายามคัดลอก 4 ไฟล์ไปยังโฟลเดอร์ bin ของฉันหลังจากหยุดบริการหลักฉันได้รับข้อผิดพลาดด้วยไฟล์เดียว (TexteDll) ข้อผิดพลาดคือ: Cannot copy TexteDll: The requested operation cannot be performed on a file with a user-mapped section open อาจเป็นเพราะการล็อคระบบบางอย่าง หรืออาจเป็นกระบวนการอื่นกำลังใช้ DLL นี้ เมื่อ googled ฉันพบว่าการรีบูตระบบอาจแก้ไขได้ ใครสามารถแนะนำสาเหตุหรือวิธีแก้ปัญหาสำหรับเรื่องนี้? ฉันตรวจสอบคุณสมบัติของ TexteDll (ทั่วไป, รุ่น, ความปลอดภัย ฯลฯ ) ทุกอย่างดูปกติ
210 windows  dll 

10
ฉันจะค้นหา PublicKeyToken สำหรับ dll เฉพาะได้อย่างไร
ฉันต้องสร้างผู้ให้บริการใหม่ในไฟล์ web.config ที่มีลักษณะดังนี้: <membership defaultProvider="AspNetSqlMemProvider"> <providers> <clear/> <add connectionStringName="TRAQDBConnectionString" applicationName="TRAQ" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="0" name="AspNetSqlMemProvider" type="System.Web.Security.SqlMembershipProvider, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /> </providers> </membership> อย่างไรก็ตามฉันได้รับข้อผิดพลาดรันไทม์ที่แจ้งว่าไม่สามารถโหลดชุดประกอบนี้และฉันคิดว่าเป็นเพราะฉันมี PublicKeyToken ผิด ฉันจะค้นหา PublicKeyToken เพื่อประกอบได้อย่างไร อีกทางหนึ่งฉันจะผิดทางอย่างสิ้นเชิงกับเรื่องนี้?

19
DLL ที่อ้างถึงไม่ได้รับการคัดลอกไปยังโฟลเดอร์สร้างผลลัพธ์ใน Visual Studio
ฉันมีทางออกสตูดิโอภาพ ฉันมีหลายโครงการในการแก้ปัญหา มีโครงการหลักหนึ่งโครงการซึ่งทำหน้าที่เป็นการเริ่มต้นและใช้โครงการอื่น มีหนึ่งโครงการพูดว่า "ProjectX" มีการเพิ่มการอ้างอิงไปยังโครงการหลัก ProjectX อ้างอิง. NET dll อื่น (พูด abc.dll) ที่ไม่ได้เป็นส่วนหนึ่งของการแก้ปัญหา ตอนนี้ abc.dll นี้ควรถูกคัดลอกไปยังโฟลเดอร์ bin / debug ของโครงการหลัก แต่ไม่ได้รับการคัดลอกที่นั่น ทำไมไม่คัดลอกเหตุผลใด ๆ

7
ฉันจะใช้ไฟล์ DLL จาก Python ได้อย่างไร?
วิธีที่ง่ายที่สุดในการใช้DLLไฟล์จากภายในPythonคืออะไร? โดยเฉพาะวิธีนี้สามารถทำได้โดยไม่ต้องเขียนC++โค้ดwrapper เพิ่มเติมเพื่อแสดงฟังก์ชั่นPython? พื้นเมืองPythonฟังก์ชันการทำงานที่เป็นที่ต้องการอย่างมากมากกว่าการใช้ห้องสมุดของบุคคลที่สาม
186 python  dll 

7
ไม่พบวิธีใช้ HttpContent
ฉันพยายามใช้HttpContent: HttpContent myContent = HttpContent.Create(SOME_JSON); ... แต่ฉันไม่มีโชคในการค้นหา DLL ที่ระบุไว้ ก่อนอื่นฉันพยายามเพิ่มการอ้างอิงถึงMicrosoft.Httpด้วยเช่นกันSystem.Netแต่ไม่ได้อยู่ในรายการ ฉันพยายามเพิ่มการอ้างอิงถึงSystem.Net.Httpแต่HttpContentคลาสไม่พร้อมใช้งาน ดังนั้นใครสามารถบอกฉันว่าฉันสามารถหาHttpContentชั้นเรียนได้ที่ไหน
186 c#  asp.net  .net  dll 

8
PHP 7: ไม่มี VCRUNTIME140.dll
ฉันมีข้อผิดพลาดเมื่อฉันเริ่ม PHP 7 บน Windows เมื่อฉันรันphpบนบรรทัดคำสั่งมันจะส่งคืนกล่องข้อความพร้อมข้อผิดพลาดของระบบ: โปรแกรมไม่สามารถเริ่มทำงานได้เนื่องจาก VCRUNTIME140.dll หายไปจากคอมพิวเตอร์ของคุณ ลองติดตั้งโปรแกรมใหม่เพื่อแก้ไขปัญหานี้ หลังจากนั้นCLIก็กระแทก เนื่องจากฉันไม่ต้องการติดตั้งไฟล์ DLL จากเว็บไซต์ภายนอกฉันไม่ทราบวิธีแก้ไขปัญหานี้! รุ่น PHP: 7.0.0alpha1 VC14 x64 เธรดที่ปลอดภัย
168 php  windows  dll  php-7 

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