Visual Studio derleme hatasını, “işlemci mimarisi arasındaki uyumsuzluğu” nasıl düzeltirim?


459

Visual Studio 2010'daki proje yapılandırmasında yeniyim, ancak biraz araştırma yaptım ve bu sorunu hala çözemiyorum. C # DLL başvuru C ++ DLL ile bir Visual Studio çözüm var. C # DLL, bazıları benim projem içinde ve bazı harici birkaç DLL başvurur. C ++ DLL dosyasını derlemeye çalıştığımda, şu uyarıyı alıyorum:

MSB3270 uyarısı: "MSIL" derlemesi yapılan projenin işlemci mimarisi ile "[dahili C # dll]", "x86" başvurusunun işlemci mimarisi arasında bir uyumsuzluk vardı.

Mimarilerimi hizalamak için Configuration Manager'a gitmemi söylüyor. C # DLL platform hedefi x86 ile ayarlanır. Başka bir şey belirtmek durumunda çalışırsanız dış DLL biri, çünkü herhangi bir CPU gibi, şikayet o bağlıdır platform hedefi x86 sahiptir.

Yapılandırma Yöneticisi baktığınızda benim C # DLL için Platform x86 ve C ++ projem için Win32 olarak Platform gösterir. Bu doğru kurulum gibi görünüyor; Elbette C ++ projemin projesinin sunulan x64'e ayarlanmış platform olmasını istemiyorum, ki bu sunulan diğer tek seçenektir.

Burada neyi yanlış yapıyorum?


Herhangi bir CPU olarak değiştirdiğinizde şikayet nedir?
lordcheeto

2
Bilgili bir öneri yapmak için yeterli bilgim yok, ancak çözümünüzü sağ tıklayın -> Proje Derleme Sırası ve C # projenizin C ++ projesinden önce derlendiğinden emin olun. Değilse, Bağımlılıklar sekmesine gidin ve VS'ye C ++ projesinin C # projesine bağlı olduğunu bildirin.
lordcheeto

2
Visual Studio yine bu konuda saçmalık. Ekranımın üstündeki platform x64 diyor ancak uyarı, inşa edilen projenin "MSIL" olduğunu söylüyor. Visual studio bana elma kullanmadığımda elma ve portakal arasında bir uyumsuzluk olduğunu söylüyor. Visual Stupido olarak yeniden adlandırabilir miyiz?
Paul McCarthy

Bildiğim kadarıyla bu Visual Studio bir hata. Platform hedefi olarak x64'ü seçiyorum ve bana projenin MSIL için inşa edildiğini söylüyor.
Paul McCarthy

Kısa yanıt, projenizin x86 veya x64'e bağımlılıkları varsa, Herhangi bir CPU'yu (yalnızca saf .NET uygulamaları için) kullanamazsınız. Bu nedenle, Herhangi Bir CPU için değil, x64 veya x32 için derlemeniz gerekir. Bu Dave'in cevabından
zar

Yanıtlar:


513

Bu uyarı yeni Visual Studio 11 Beta ve .NET 4.5 ile sunulmuş gibi gözükse de, daha önce mümkün olabileceğini düşünüyorum.

İlk olarak, bu sadece bir uyarı. Sadece x86 bağımlılıklarıyla uğraşıyorsanız hiçbir şeye zarar vermemelidir. Microsoft, projenizin "Herhangi bir CPU" ile uyumlu olduğunu bildirdiğinizde sizi uyarmaya çalışıyor, ancak x86 veya x64 olan bir proje veya .dll derlemesine bağımlılığınız var. Bir x86 bağımlılığınız olduğundan, projeniz teknik olarak "Herhangi bir CPU" uyumlu değildir. Uyarıyı ortadan kaldırmak için, projenizi "Any CPU" dan "x86" olarak değiştirmelisiniz. Bunu yapmak çok kolay, işte adımlar.

  1. Yapılandırma Yapılandırma Yöneticisi menü öğesine gidin.
  2. Projenizi listede bulun, Platform altında "Herhangi bir CPU" diyecek
  3. Açılır menüden "Herhangi bir CPU" seçeneğini seçin ve ardından <New..>
  4. Bu iletişim kutusundan "Yeni Platform" açılır menüsünden x86'yı seçin ve "Ayarları kopyala" açılır menüsünde "Herhangi bir CPU" nun seçili olduğundan emin olun.
  5. Tamam'ı tıklayın
  6. Hem Debug hem de Release konfigürasyonları için x86'yı seçmek isteyeceksiniz.

Bu, uyarıyı ortadan kaldıracak ve aynı zamanda montajınızın veya projenizin artık "Herhangi bir CPU" uyumlu değil, şimdi x86'ya özgü olduğunu belirtecektir. Bu, x64 bağımlılığı olan 64 bitlik bir proje oluşturuyorsanız da geçerlidir; bunun yerine x64'ü seçersiniz.

Başka bir not, projeler genellikle saf .NET projeleri ise "Herhangi bir CPU" uyumlu olabilir. Bu sorun, yalnızca belirli bir işlemci mimarisini hedefleyen bir bağımlılık (3. taraf dll veya kendi C ++ yönetilen projeniz) tanıtırsanız ortaya çıkar.


3
Visual Studio 2012'nin RTW'sini yeni kurdum ve önceden varolan bir 2010 çözümü açtım ve aynı uyarıyı görmeye başladım, bu yüzden RTW'de hala mevcut olan bir şey.
Tod Thomson

4
Bununla birlikte, David'in cevabının doğru olduğunu düşünüyorum, bu uyarı uygulamanızın gerçekten "AnyCPU" olmadığını size bildiriyor, bu yüzden sonunda yanlış mimariye dağıtırken sorunlarla karşılaşacaksınız.
Tod Thomson

6
Bir şeye zarar verebilir. Herhangi bir CPU exe 64 bit işletim sistemine x64 olarak yüklenir ve x86 dll'leri yükleyemez. Belirli bir platforma bağımlılığınız varsa, platformunuzu gerçekten doğru şekilde ayarlamalısınız.
Yaur

1
Yapı menüsünün VS C # 2010 Express'te eksik olduğu anlaşılıyor. Nasıl ulaşırım? Keşke bir şeyleri saklamasalardı.
Xonatron

1
Visual Studio 2010 Express'te oluşturma menüsünün nasıl etkinleştirileceğini öğrendim: Araçlar menüsü -> Ayarlar -> 'Uzman Ayarları'nı seçin
Xonatron

144

Bu çok inatçı bir uyarıdır ve geçerli bir uyarı olsa da, üçüncü taraf bileşenlerin kullanımı ve diğer nedenlerle çözülemediği bazı durumlar vardır. Uyarı, projeler platformum AnyCPU olduğu ve AMD64 için oluşturulmuş bir MS kütüphanesine atıfta bulunmam dışında benzer bir sorunum var. Bu arada Visual Studio 2010'da ve VS2012 ve .Net 4.5 yüklenerek tanıtıldığı anlaşılıyor.

Başvurduğum MS kütüphanesini değiştiremediğim ve hedef dağıtım ortamımın yalnızca 64 bit olacağını bildiğim için, bu sorunu güvenle yok sayabilirim.

Uyarı ne olacak? Microsoft , Connect raporuna yanıt olarak bir seçeneğin bu uyarıyı devre dışı bırakmak olduğunu bildirdi. Bunu sadece çözüm mimarinizin çok farkında olduğunuz ve dağıtım hedefinizi tam olarak anladığınız ve bunun aslında geliştirme ortamının dışında bir sorun olmadığını bildiğinizden yapmanız gerekir.

Proje dosyanızı düzenleyebilir ve uyarıyı devre dışı bırakmak için bu özellik grubunu ve ayarı ekleyebilirsiniz:

<PropertyGroup>
  <ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>None</ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
</PropertyGroup>

1
Bu çözümü gördüğüm diğer resmi MS başvurusu Microsoft .NET Framework 4.5 RC Benioku dosyasındadır . Garip bir şekilde RTM Benioku dosyasından kaldırıldı.
JohnC

4
Bu çalışır, ancak uyarının bir varyasyonu için geçerli değildir: "Referans verilen montaj ... uygulamadan farklı bir işlemci hedefliyor". Bu uyarı için benzer bir ayar olsaydı harika olurdu?
Jimmy

6
"projeler platformum AnyCPU ve AMD64 için oluşturulmuş bir MS kütüphanesine başvuruyorum" ... Bu YANLIŞ. Hedef dağıtımınız her zaman 64 bit olduğundan, 64 bit varsayımınız ihlal edilirse ve aynı zamanda uyarıyı önlerse, platformunuzu x64 olarak ayarlayabilirsiniz.
Ben Voigt

2
@BenVoigt teoride harika bir fikir, ancak VS x86 işlemi olmak, uygulamanız sadece 64 bit olsa bile, Windows Forms Designer gibi şeyler çalıştırmak için x86 kontrolleri gerektirir. Yanlış "Any CPU" derlemesi kullanmak için geçerli, ama talihsiz bir neden.
jrh

1
@jrh: Daha sonra GUI'yi bir DLL projesine koyun ve bunu AnyCPU olarak oluşturun. Yerel bağımlılıklara uyacak şekilde EXE'in doğru mimariyle işaretlenmesi gerekir. GUI'nin mantıktan uygun şekilde ayrılması uzun bir yol kat eder (yerel kodun GUI'nin bir parçasını oluşturması gibi hala sınırlarına sahip olmasına rağmen, her ikisi için de tüm projeyi oluşturmazsanız, tasarımcı desteği kayıp bir nedendir x86 ve x64)
Ben Voigt

61

İyi bir kural "açık DLL'ler, kapalı EXE'ler" dir:

  • EXE , x86 veya x64 belirterek işletim sistemini hedefler.
  • DLL'ler açık bırakılır (yani AnyCPU), böylece 32 bit veya 64 bit işlemde başlatılabilir.

AnyCPU olarak bir EXE oluşturduğunuzda, yaptığınız tek şey, işletim sistemine hangi işlem bit'inin kullanılacağına dair kararı ertelemektir, bu da EXE'yi beğenisine JIT verecektir. Yani, bir x64 işletim sistemi 64 bitlik bir işlem oluşturur, x86 işletim sistemi 32 bitlik bir işlem oluşturur.

DLL'leri AnyCPU olarak oluşturmak onları her iki işlemle de uyumlu hale getirir.

Montaj yüklemesinin incelikleri hakkında daha fazla bilgi için buraya bakın . Yönetici özeti şuna benzer:

  • AnyCPU - Çağırma işlemine bağlı olarak x64 veya x86 derlemesi olarak yüklenir
  • x86 - x86 düzeneği olarak yükler; x64 işleminden yüklenmeyecek
  • x64 - x64 düzeneği olarak yükler; x86 işleminden yüklenmeyecek

4
Bu kural bana mantıklı geliyor. Ancak aşağıdaki durumu göz önünde bulundurun: NetA.dll (Any CPU) tarafından kullanılan Native.dll (x64), App1.exe (x64) tarafından kullanılan NetB.dll (Any CPU) tarafından kullanılır. Burada gerçek bir sorun yok, ama NetA.dll derleme bana uyarı verir. Tamam, bu derleme doğrudan Native.dll bağlıdır, ben de x64 olarak işaretleyebilir. Ama sonra NetB.dll derleme şikayet ediyor. NetB.dll farklı, saf-nokta-net uygulamada kullanılan ortak bir montaj olduğundan "Herhangi bir CPU" olarak tutmak istiyorum. Tek seçeneğimin uyarıyı bastırmak / yoksaymak olduğu sonucuna varıyorum. Evet?
Steve Robbins

2
Native.dll bağımlılığı nedeniyle, uyarı bastırmak olsun ya da olmasın, tüm uygulama / montaj soy şimdi x64. Bastırma senaryonuzda çalışırken, gelecekte tuhaf durumlar ortaya çıkabilir. Örneğin, 1) derleme NetB, Nativex64'ün yüklenmeyeceği bir x86 ortamında kullanılır veya 2) müşteriniz App1.exe'nin x86 sürümünü istiyor ve NetB herhangi bir CPU olarak işaretlendiğinden, yine de mutlu bir şekilde derliyorsunuz, Yığının üstündeki Nativex64 yüklenmeyecek
Gustavo Mori

Gustavo'nın kuralı iyi bir prensip olsa da, projenin kuralı takip etmeyen 3. taraf bir topluluğa zaten bağımlı olduğu için bu soruda sorulan belirli sorun için kullanılamaz (AnyCPU yerine x86'dır). Dolayısıyla, bağımlılık olduğu sürece, tüm proje zinciri x86'yı hedeflemeli ve başka bir şey yapmamalıdır.
David Burg

23

C # DLL platform hedefi x86 ile kuruldu

Hangi tür bir sorun, bir DLL aslında sürecin bitness olacağını seçmek için alamadım. Bu tamamen EXE projesi tarafından belirlenir, bu, yüklenen ilk derlemedir, bu nedenle Platform hedef ayarı, işlemin bitliğini sayan ve ayarlayan ayardır.

DLL'lerin seçeneği yoktur, işlem biti ile uyumlu olmaları gerekir. Değilse, kodunuz onları kullanmaya çalıştığında BadImageFormatException ile büyük bir Kaboom alırsınız.

Böylece her iki şekilde çalışır DLL'ler için iyi bir seçim AnyCPU olduğunu. Bu C # DLL için çok mantıklı, onlar her iki şekilde çalışır. Ancak, C ++ / CLI karışık mod DLL'niz değil, yalnızca işlem 32 bit modunda çalıştığında iyi çalışabilen yönetilmeyen kod içeriyor. Sen olabilir bu konuda uyarılar üretmek için inşa sistemi olsun. Bu tam olarak ne var. Sadece uyarılar, hala düzgün bir şekilde inşa ediyor.

Sadece sorunu ortaya çıkarın. EXE projesinin Platform hedefini x86 olarak ayarlayın, başka bir ayarla çalışmayacaktır. Ve tüm DLL projelerini AnyCPU'da tutun.


1
Yani, açık söylemek gerekirse: Ben EXE bina değilim, ben başkasının EXE ile çalıştırmak için bir DLL inşa ediyorum. C # DLL'lerin platform hedefini herhangi bir CPU'ya değiştirmek uyarıyı ortadan kaldırmaz. Bu connect.microsoft.com/VisualStudio/feedback/details/728901/… bir durum olup olmadığını merak ediyorum - Ben uyarı kendini görmezden gelirdi ama aslında EXE C # DLL yükleyebilirsiniz ama C ++ DLL bu yüzden bence bu gerçek bir problem.
Paul Eastlund

Aslında VS2010 mu kullanıyorsunuz? Ayrıca C ++ / CLI DLL yükleyemedi açık değildi. Teşhis nedir? Sorularınızı bu önemli bilgilerle güncelleyin.
Hans Passant

Yük arızası hakkında yayınlanmadı, çünkü bağlı olduğundan% 100 emin değildim ve daha fazla hata ayıklamada olmadığı ortaya çıktı. VS2010 kullanıyorum. Soru metni güncellendi. Karışıklık için çok üzgünüm
Paul Eastlund

1
DLL yüklemeyle ilgili herhangi bir hata veya istisna belgelemediniz. Bana ne bildiğini söylemezsen sana yardım edemem. Onunla iyi şanslar.
Hans Passant

5

Ben aynı uyarıyı alıyordum ben bunu yaptım:

  1. projeyi boşalt
  2. proje özelliklerini düzenle ie .csproj
  3. aşağıdaki etiketi ekleyin:

    <PropertyGroup>
        <ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
            None
        </ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch>
    </PropertyGroup>
  4. Projeyi yeniden yükle


2
Bu sorunu çözmüyor. Bu sadece belirli bir proje için uyarıyı devre dışı bırakıyor. Ancak bazı durumlarda geçerli bir çözüm buluyorum. Teşekkürler!
Küçük

4

Bugün bu sorunu yaşadım ve sadece Visual Studio'daki bina yapılandırmalarına bakmak yardımcı olmadı çünkü hem bina olmayan proje hem de başvurulan proje için Herhangi Bir CPU gösterdi.

Sonra başvurulan projenin csproj baktı ve buldum:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x64</PlatformTarget>

Her nasılsa bu PlatformTarget bir yapılandırma değişikliğinin ortasına eklendi ve IDE bunu görmedi.

Başvurulan projeden bu satırı kaldırmak sorunumu çözdü.


Bunu anlamak benim bütün günümü aldı. Çok teşekkürler! :)
SohamC

3

C # DLL'nizin x86 tabanlı bağımlılıkları varsa, DLL dosyanızın x86 olması gerekir. Gerçekten bunun için bir yol göremiyorum. VS, 64-bit yürütülebilir dosya 32-bit kitaplıkları yükleyemediğinden (örneğin) x64 olarak değiştirmekten şikayet ediyor.

C ++ projesinin yapılandırması hakkında biraz kafam karıştı. Derleme için sağlanan uyarı iletisi, hedeflediği platformun [MSIL] olduğunu bildirdiği için AnyCPU için hedeflendiğini gösterir, ancak proje yapılandırmasının aslında Win32 olduğunu belirttiniz. Yerel bir Win32 uygulaması MSIL içermemelidir - ancak bir C # kitaplığıyla etkileşime giriyorsa CLR desteğinin etkinleştirilmiş olması gerekir. Bu yüzden bilgi tarafında birkaç boşluk olduğunu düşünüyorum.

Sizden, projelerin tam yapılandırması ve bunların birbirleriyle nasıl ilişkili olduğu hakkında biraz daha ayrıntılı inceleme yapmanızı ve yayınlamanızı isteyebilir miyim? Mümkünse daha fazla yardımcı olmaktan memnuniyet duyarız.


3

David Sacks cevap ek olarak, ayrıca gitmek gerekebilir Buildsekmesine Project Propertiesve setteki Platform Targetiçin x86size bu uyarıları veriyor proje için. Öyle olmasını beklemenize rağmen, bu ayar, yapılandırma yöneticisindeki ayarla mükemmel şekilde senkronize görünmüyor.


2

C # projeleri için, x86 hedefi neye benzediğini yapar. Bu derlemenin yalnızca x86 mimarilerini desteklediğini söylüyor. Aynı şekilde x64 için. Öte yandan herhangi bir CPU, hangi mimariyi önemsediğimi, her ikisini de desteklediğimi söylüyor. Yani, sonraki 2 soru (1) bu dll'leri kullanan yürütülebilir yapılandırması nedir? ve (2) bitlik nedir/ Bilgisayarınızın Sormamın nedeni, yürütülebilir dosya 64-bit'te çalışmak için derlenmişse, 64-bit modda da çalışabilmesi için tüm bağımlılıklara İHTİYACI VAR. Herhangi bir CPU derlemeniz yüklenebilmelidir, ancak belki de sadece x86 yapılandırmasında çalışabilen başka bir bağımlılığa atıfta bulunmaktadır. Yürütülebilir dosyayı 64 bit modunda çalıştırmayı planlıyorsanız, her şeyin "Herhangi bir CPU" veya "x64" olduğundan emin olmak için tüm bağımlılıkları ve bağımlılık bağımlılıklarını denetleyin. Aksi takdirde sorun yaşarsınız.

Birçok yönden, Visual Studio, Herhangi bir CPU ve çeşitli mimariye bağlı montajların bir karışımını derlemeyi kolaylaştırmaz. Bu yapılabilir, ancak çoğu zaman "Herhangi bir CPU" olacak bir montajın x86 ve x64 için ayrı olarak derlenmesi gerekir, çünkü bir yerlerde bağımlılık bağımlılığının iki versiyonu vardır.


Sadece DLL'leri oluşturmaya çalışırken bir hata alıyorum çünkü yürütülebilir maddenin yapılandırması uygun mu? (Yine de x86.) Bilgisayarım x64.
Paul Eastlund

2
Hangi bitin kullanılacağını belirleyen çalıştırılabilir dosyadır . Yürütülebilir dosya x64 olarak çalışıyorsa, yüklediği her şey (doğrudan veya dolaylı olarak) x64 veya Herhangi bir CPU olmalıdır. Yürütülebilir dosya x86 olarak çalışıyorsa, yükler (doğrudan veya dolaylı olarak) x86 veya Herhangi bir CPU olmalıdır.
Jonathan DeCarlo

1

Daha önce benzer bir sorun yaşadım, özellikle SharePoint gibi mevcut bir x64 çözümüne bir test çözümü eklerken. Benim durumumda, belirli proje şablonlarının varsayılan olarak belirli platformlar olarak eklenmesi ile ilgili gibi görünüyor.

İşte benim için sıklıkla çalışan çözüm: Configuration Manager'da her şeyi doğru platforma ayarlayın (etkin yapılandırma açılır menüsü, normalde Debug diyor, bunu elde etmenin iyi bir yoludur) ve proje platformu (proje özelliklerinde), ardından derledikten sonra her şeyi yeniden AnyCPU olarak ayarlayın. Bazen bazı bağımlılıkları (her projenin Özellikler DLL'leri) kaldırmak ve yeniden eklemek gerekir ve bazen "32 bit veya 64 bit işleminde testleri çalıştırın" (Local.testsettings çift tıklatın ve Hosts gidin) değiştirilmesi gerekir.

Bana öyle geliyor ki, bu sadece bir şeyleri ayarlayıp sonra geri koyuyor, ama muhtemelen görmediğim sahnelerin arkasında daha fazla şey oluyor. Yine de geçmişte benim için oldukça tutarlı çalıştı.


1

Projem için hem x86 hem de x64 için bir gereksinimim var. Buradaki sorun, birini kullanırken referans eklediğinizde diğerini oluşturduğunuzda şikayet etmesidir.

Benim çözüm * .csproj dosyaları elle aşağıdaki gibi satırlar düzenlemektir:

<Reference Include="MyLibrary.MyNamespace, Version=1.0.0.0, Culture=neutral, processorArchitecture=x86"/>

<Reference Include="MyLibrary.MyNamespace, Version=1.0.0.0, Culture=neutral, processorArchitecture=AMD64"/>

<Reference Include="MyLibrary.MyNamespace, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"/>

bununla değiştir:

<Reference Include="MyLibrary.MyNamespace, Version=1.0.0.0, Culture=neutral"/>

1

MS UNIT Test DLL neden oldu benzer bir sorun vardı. Benim WPF uygulama x86 ama birim test DLL (başvurulan EXE dosyası) "Herhangi bir CPU" olarak derlendi. Birim test DLL x86 (EXE ile aynı) için derlenecek değiştirildi ve resovled.



0

Bir .NET EXE / DLL AnyCPU ve hem x86 hem de x64 ile derlenmiş, yönetilen DLL'lerin her ikisi de belki de farklı dosya adları ile paketlenmiş ve daha sonra .NET modülü çalışma zamanına göre doğru olanı dinamik olarak yükleyen bir yol olmalıdır. işlemci mimarisi. Bu AnyCPU'yu güçlü yapar. C ++ DLL yalnızca x86 veya x64 destekliyorsa, AnyCPU elbette anlamsızdır. Ancak, yapılandırma yöneticisi olarak uygulandığını görmediğim her iki fikir de, aynı projeyi, AnyCPU'nun veya hatta herhangi bir yapılandırma gibi diğer kavramların mümkün olmasına izin veren çoklu demetleme için aynı projeyi iki kez farklı bir yapılandırma / platform ile oluşturmak için bir araç bile sağlamaz.


2
stackoverflow'a hoş geldiniz! bu cevabı biraz odaklamaya / yeniden biçimlendirmeye çalışabilir misiniz?
Corley Brigman

Bu, iyi bir soru veya bir blog yazısı veya Connect'teki bir özellik isteği gibi görünüyor ... aslında buna cevap vermiyor.
Ben Voigt

0

Yapımda çok benzer bir uyarı vardı. Projelerim .NET 4.5'i hedefleyecek şekilde ayarlandı, derleme sunucusunda Windows 8.1 SDK (.NET 4.5.1 için) kuruldu. Projelerimi .NET 4.5.1'i hedeflemek için güncelledikten sonra (benim için sorun değildi, tamamen yeni bir uygulama içindi), artık uyarı almadım ...


0

Bu uyarıyı "Configuration Manager" öğesini Release (Mixed Plataform) olarak değiştirerek çözdüm.


0

SQL Server 2012 SP1 SSIS boru hattı komut dosyası görevini derlerken Visual Studio 2012'de bu uyarıyı aldım - SQL Server 2012 SP2'yi yükleyene kadar.


0

SQLite açılış bağlantısı ile aynı sorunu vardı ve Nuget kullanarak ve proje (SQLite) kullanılan bileşeni yüklemek düzeltildi! bileşeninizi bu şekilde kurmayı deneyin ve sonucu kontrol edin


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.