2010-04-03 6 views
5

मेरे पास एक SQL सर्वर सीई डेटाबेस है जो dev में ठीक काम करता है, लेकिन क्लाइंट पर स्थापित होने पर कोई समस्या होती है।एसक्यूएल सर्वर सीई - आंतरिक त्रुटि: साझा स्मृति क्षेत्र नहीं खोल सकता

  • SQL सर्वर सीई 3.5 निर्भरताओं को तैनाती के हिस्से के रूप में कॉपी किया गया है।
  • लक्ष्य मशीन एक स्वच्छ विंडोज 7 32-बिट अंतिम छवि है।

ईवेंट लॉग में अपवाद के लिए संदेश है:

Message: Internal error: Cannot open the shared memory region. 
Stack Trace: at System.Data.SqlServerCe.SqlCeConnection.ProcessResults(Int32 hr) at 
System.Data.SqlServerCe.SqlCeConnection.Open(Boolean silent) at 
System.Data.SqlServerCe.SqlCeConnection.Open() at 
System.Data.Linq.SqlClient.SqlConnectionManager.UseConnection(IConnectionUser user) at 
System.Data.Linq.SqlClient.SqlProvider.Execute(
    Expression query, 
    QueryInfo queryInfo, 
    IObjectReaderFactory factory, 
    Object[] parentArgs, 
    Object[] userArgs, 
    ICompiledSubQuery[] subQueries, 
    Object lastResult) at 
System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(
    Expression query, 
    QueryInfo[] queryInfos, 
    IObjectReaderFactory factory, 
    Object[] userArguments, 
    ICompiledSubQuery[] 
    subQueries) at 
System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(
    Expression query) at 
System.Data.Linq.DataQuery`1.System.Collections.Generic.IEnumerable<T>.GetEnumerator() at 
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) at 
System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source) at 
Application specific stuff here 

ऐसा लगता है कि इस SSCE_M_CANTOPENSHAREDMEMORY है और साइट पर इस बदलने के लिए एक कनेक्शन स्ट्रिंग मान नहीं है कहते हैं और कि इन मुद्दों कर रहे हैं आम तौर पर अंत डेवलपर्स द्वारा हल नहीं किया जा सकता है।

क्या कोई इसमें भाग लेता है, और यदि आप इस मुद्दे को हल करने में सक्षम थे?

+0

तो जब मैं फ़ाइल कर के बजाय सीई क्रम स्थापित कॉपी कोई समस्या नहीं है। – blu

उत्तर

6

आप सही हैं सीई क्रम स्थापित करने की है। और यदि आप वीएस -2010 का उपयोग कर रहे हैं, तो आपको यह सुनिश्चित करना होगा कि आप सीई रनटाइम के एसपी 2 स्थापित करें।

भी स्थापित उस के साथ

, मैं इस आई है। मेरे मामले में, मेरे पास एक SQL सर्वर सीई उदाहरण ADO.NET सिंक्रनाइज़ेशन सेवाओं का उपयोग कर डेटाबेस के लिए स्थानीय कैश के रूप में कार्य करता था। क्या यह आपका परिदृश्य है?

मैंने पाया कि परीक्षण मशीनों पर मैं यह त्रुटि आई:

  • तो मंच विस्टा या विंडोज 7 था; और
  • एसक्यूएल सर्वर सीई डेटाबेस
    करने के लिए आवेदन के साथ स्थापित किया गया था, तो इस तरह के सी के रूप में एक सुरक्षित निर्देशिका में रहते हैं,: \ Program Files या C: \ Program
    Files (x86); और
  • कार्यक्रम मानक उपयोगकर्ता क्रेडेंशियल्स का उपयोग चलाया गया था (उदा प्रशासक के पास भेजा नहीं) हालत के लिए

समाधान शामिल:

  • " प्रशासक के रूप में" आवेदन चल रहा है; या
  • व्यवस्थापक प्रमाण-पत्रों की आवश्यकता के लिए एप्लिकेशन मैनिफेस्ट को कॉन्फ़िगर करना; या
  • एप्लिकेशन को पुन: सक्रिय करना ताकि .sdf फ़ाइल एक असुरक्षित निर्देशिका में स्थित हो, जैसे C: \ ProgramData [कुछ उपनिर्देशिका नाम] और उस क्षेत्र को इंगित करने के लिए कनेक्शन स्ट्रिंग को संशोधित करना; या
  • एक उपयोगकर्ता अंतरिक्ष में पूरे अनुप्रयोग निर्देशिका स्थानांतरित। उदाहरण के लिए, "दस्तावेज़" या EXE के लिए पूर्ण फ़ाइल पहुंच अधिकारों के साथ कुछ समान स्थान और .एसडीएफ फ़ाइल

    जाहिर है, इनमें से प्रत्येक विकल्प के नुकसान हैं।

+0

रॉब आपको बहुत बहुत धन्यवाद, आपने मुझे बहुत समय बचाया है। – v00d00

0

मैं एक ही समस्या थी।

विंडोज 7।

ऐसा इसलिए था क्योंकि उपयोगकर्ता डोमेन में था और अनुमतियां जहां "सभी" को दी गई थी और विफल रही थी।

यह% DOMAIN%/हर कोई के लिए प्रदान किया जाना चाहिए

संबंध

संबंधित मुद्दे