-
Рамиль © (30.05.08 10:12) [0]Есть программа (.NET 2), работающая с xls файлом. Поставлен 2007 офис и PIA.
Как ее заствить работать на 2003 офисе? PIA для 2003 на 2007 не ставится. -
boa_kaa © (30.05.08 22:16) [1]
> Рамиль © (30.05.08 10:12)
в целях повышения самообразованности: а что такое PIA?
гугл с яндексом сговорились, говорят, что это пакистанские авиалинии... -
VMcL © (02.06.08 10:31) [2]PIA = Primary Interop Assemblies
? -
VMcL © (02.06.08 10:33) [3]По сабджу. Не уверен, но, возможно, нужно:
1. Либо изначально в программе использовать более старую версию Офиса.
2. Либо пользоваться поздним связыванием. -
Рамиль © (04.06.08 08:51) [4]
> boa_kaa © (30.05.08 22:16) [1]
Да ладно, по запросу http://www.google.com/search?ie=UTF-8&hl=ru&q=PIA%20office вторая ссылка http://www.microsoft.com/downloads/details.aspx?FamilyID=3c9a983a-ac14-4125-8ba0-d36d67e0f4ad&displaylang=en PIA для 2003. Впрочем VMcL уже сказал.
> VMcL © (02.06.08 10:33) [3]
> 1. Либо изначально в программе использовать более старую
> версию Офиса.
Можно попробовать.. Но это надо ставить себе старый офис, либо ставить VS на другой машине.
> 2. Либо пользоваться поздним связыванием.
Это вот так?Excel.Application XL;
string app = "Excel.Application";
Type excelType = Type.GetTypeFromProgID(app);
XL = (Excel.Application)Activator.CreateInstance(excelType);
То же самое, ругается что нету сборок.
Пока вышел из ситуации, поставиви в опциях копировать сборки локально и копируя их вместе с exe. Но не красиво как то.. -
b z (04.06.08 11:08) [5]
> То же самое, ругается что нету сборок.
У вас каша получилась. Никаких Excel.Application фигурировать не должно и соотв. references, только System.Reflection.
> Но не красиво как то..
Нормально. Interops не обязаны быть везде. -
Рамиль © (04.06.08 11:25) [6]
> У вас каша получилась. Никаких Excel.Application фигурировать
> не должно и соотв. references, только System.Reflection.
>
А, ну я подозревал :)
Надеялся, что подцепит Excel.Application из установленного PIA.. Попробую.