ข้ามไปที่เนื้อหาหลัก

แก้ปัญหา Visual Studio 2008 Server Tool connect กับ SQL Server Compact Edition 3.5 ไม่ได้

สาเหตุเพราะเขียนติดต่อกับไฟล์ .sdf เครื่องหนึ่งที่เป็น Win8.1 แล้วย้ายไปรันกับอีกเครื่องหนึ่งที่เป็น Win7 พบว่า SQLServerCE.dll คนละเวอร์ชัน ก็เลย reference ใหม่ พอจะย้ายกลับมาใช้เครื่อง Win8.1 เดิมกลับใช้ไม่ได้ ก็เลย Uninstall พวก runtime ต่าง ๆ ของ SQL Server Compact Edition ตั้งแต่ 3.5,3.5SP1 ยัน 3.5SP2 สุดท้ายพอจะ add connection ใน Data Source กลับไม่มีให้เลือก SQL Server compact edition 3.5 ทำหลายอย่างทั้ง uninstall VS2008 Team System แต่ไม่ได้เอา SP1 ออก เลยเพี้ยนหนัก แนวทางแก้ไขที่พอนึกออกดังนี้

1. Uninstall VS2008 Team System
2. Uninstall MS VS2008 Remote Debugger
3. Uninstall MS Windows SDK for VS2008 .NET framework tools -enu
4. Uninstall MS Windows SDK for VS2008 Headers and Libraires
4. Uninstall MS Windows SDK for VS 2008 SDK Reference Assemblies and IntelliSense
6. Uninstall Windows SDK for VS 2008 SP1 Tools
7. Uninstall MS Windows SDK for VS 2008 SP Win32 Tools
8. Uninstall MS .NET Compact Framework 2.0 SP2
9. Uninstall MS .NET Compact Framewrk 3.5
10. Uninstall MS SQL Server 3.Compact 3.5 ทุกตัวใน Uninstall a program
11. turn feature off .net framework 3.5
12. restart
13. มันจะฟ้องว่ามี app ที่ต้องการรัน .Net Framework 3.5 ให้เปิด turn feature on
14. install VS2008 Team System อีกรอบ จากขั้นตอนนี้จะได้ Provider SQL Server Compact 3.5 กลับมา
15. install VS90sp1-KB945140-ENU.exe เพื่อแก้ไข VS2008SP1
16. install SQL Server CE 3.5SP1 Device Runtime
17. install SQL Server CE 3.5SP1 Runtime (Windows)
18. install SQL Server CE 3.5SP2 for Device
19. install SQL Server CE 3.5SP2 (x86+x64 ลงทั้งคู่)  for Windows Desktop

ทดสอบโดยที่ Server Explorer -> add Connection เลือก data source -> SQL Server Compact Edition 3.5 เลือกไฟล์ Northwind.sdf ที่อยู่ใน C:\Program Files (x86)\Microsoft SQL Server Compact Edition\v3.5\Samples แล้วกด Test Connection มันจะฟ้องว่าไม่มีสิทธิ์เปิด เพราะเป็น Security ของ Windows 8.1 ลองย้ายไฟล์มาที่ D:\ แล้วลองเปิดดู ใช้งานได้

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

เทคนิคการสอบใบขับขี่รถยนต์ ท่าจอดรถเทียบฟุตบาทห่างไม่เกิน 25cm ด้วย "Sticker"

วันนี้พาพี่ที่บ้านไปสอบใบขับขี่รถยนต์ครั้งที่ 3 ซึ่งสอบตกท่าจอดรถเทียบฟุตบาท โดยคนขับรถเป็นแล้วจะรู้สึกว่าไม่เห็นจะยากตรงไหน แต่สำหรับคนที่เพิ่งหัดขับรถ ประกอบกับได้จับรถป้ายแดงที่เพิ่งถอยออกมาขับได้ ไม่ถึง 5 ชม. นั้นเป็นเรื่องที่ยากจะทำได้ ผมคนหนึ่งที่ได้ใบขับขี่มานาน แต่พอให้มาขับจอดเทียบฟุตบาทด้วยรถป้ายแดงใหม่เอี่ยมของคนอื่นแล้ว มีอันต้องจอดห่างทุกที ด้วยเวลาในการซ้อมขับที่เหลือไม่ถึง 3 ชม. ก่อนสอบจริง ทำให้ต้องคิดหาเทคนิควิธีต่าง ๆ ที่จะทำได้ใบขับขี่มา (เพราะเหนื่อยกับความพยายามสอบมา 2 ครั้งแล้ว) จนทำให้คิดเทคนิค "Sticker" นี้ขึ้นได้ โดยปกติแล้วถ้าขับรถจอดเทียบฟุตบาทแล้วพยายามมองกระจกข้างให้ล้อหลังชิดเส้นขอบพอดี ผลออกมาจะทำให้ล้อหน้าปีนฟุตบาท ไอ้ครั้นจะให้พี่ที่เพิ่งหัดขับรถมาได้ไม่ถึง 8 ชม. กะขนาดตัวรถให้ได้ (ซึ่งขนาดผมเองยังคงกะลำบาก) ภายในสิบห้านาทีนั้นโอกาสเป็นไปได้ยากมาก ด้วยการทดลองเทคนิคต่าง ๆ หลาย ๆ แบบ ที่พอจะนึกออกจากประสบการณ์และเวลาอันสั้นรวบรัด ก็ทำให้เกิดแนวคิดที่ว่า ทำอย่างไรให้สามารถมองล้อหน้าว่าติดเส้นขอบหรือเปล่า ได้เหมือนกับที่ใช้กระจก...

เขียนโปรแกรม Visual Studio 2008(.NETCF3.5) กับ Windows Mobile 6 ติดต่อกับ Database MSSQL Server 2008 โดยตรง (ไม่ได้ใช้ SQLCE)

รับ Requirement ให้เขียนโปรแกรมบน Windows Mobile 6 ติดต่อกับ Database MSSQL Server 2008 โดยตรง ตอนแรกก็ลองใช้ SQLCE แต่เท่าที่ดูมันไม่ได้เชื่อมต่อ กับ Database Server แต่มันใช้ Database ในเครื่อง Pocket PC แทน ซึ่งไม่ตรงกับ Requirement นัก เลยลองเขียนโปรแกรมเชื่อมต่อไปยัง SQL Server ตรง ๆ กับปรากฏว่า import System.data.SqlClient ไม่ได้ หาไปหามา พบว่า SqlClient มันอยู่ในไฟล์ System.Data ใน VS2008 ซึ่งถ้าใช้ .NETCF 3.5 มันไม่มีให้ใช้ ลองถามอากู๋ดูก็พบว่ามีคนเขียนแล้วใช้ได้ เลยสงสัยว่าใช้ได้ยังไง หมดไป 1 วันก็พบว่าเขา Add Reference file "System.data.SqlClient.dll" มาใช้กัน ซึ่งเป็นของ "VS2005" ถ้าเป็น VS2008 มันเอาไปรวมใน System.Data.dll แล้ว หมดสิทธิ์ใช้งานนะจ๊ะ ครั้นลองเอา System.data.dll ของ .NET framework ตัวเต็มมา Add ใส่แทนที่ ผลปรากฏว่าพังไม่เป็นท่าเลย หลังจากถอดใจแล้วผลอยหลับไปงีบ ตื่นมาก็อาศํยสิ่งศักดิ์สิทธิ์เสียหน่อย ท่องคาถาให้งานราบรื่น ปรากฏว่า "สิ้งศักดิ์สิทธิ์มีจริง ไม่เชื่ออย่าลบหลู่" ไปเจอ Link (ลิงก์พังแล้ว) นี้   ซึ่งม...

ทำสาย Console Port ของ Router Zyxel P660HW-T1 v2 จาก True ไว้ซ่อมตอน Update firmware แล้วเดี้ยง ขึ้น PWR LED Blink

(หากใครต้องการข้อมูลเนื้อ ๆ ไม่อยากอ่านนิยาย ก็เลือกอ่าน link หรือดูรูปเอานะครับ ^^') สืบเนื่องมาจากอาการ Router Zyxel P660HW-T1 v2 เกิดอาการ Restart เองบ่อย ๆ มาตั้งแต่ก่อนน้ำท่วม (กลางเดือน ก.ย. 54) ช่วงน้ำท่วมก็เลยได้ข่าวจากเว็บไซต์ ทรูออนไลน์ว่า สามารถแำ่ก้ปัญหาได้โดยการ update firmware แต่ต้องผ่านสาย LAN เท่านั้น ด้วยความอยากโชว์เหนือ และขี้เกียจไปคุ้ยสาย LAN ก็เลย update มันผ่าน Wireless ซะเลย 555 ผลคือ router เดี้ยงไฟ PWR LED กะพริบตลอดเวลา เศร้าคโรต ไม่น่าเลย T-T ลองหาวิธีแก้จากอากู่ดู ได้ความว่าสามารถส่งไปเคลมที่ Zyxel ได้ (ไม่รู้ว่ามีค่าใช้จ่ายหรือเปล่า) และอีกวิธีคือสามารถใช้ สาย Console Port update firmware เข้าไปใหม่ได้ แต่สาย Console ไม่มีขายต้องทำเอง อาศัย chipset Max3232 อ้างอิงตาม Link ข้างล่าง http://www.adslthailand.com/forum/viewtopic.php?f=21&t=85843 http://www.adslthailand.com/forum/viewtopic.php?f=21&t=64770&start=0 เห็นวงจรแล้วค่อนข้างเครียดทีเดียว เพราะความรู้อิเล็คทรอนิคส์ ก็มีแค่งู ๆ ปลา ๆ ปู ๆ ยิ่ง ๆ เมือตอนหัดเล่น ว. สมัย ม.6 เท...