Невозможно установить свойство Orientation класса PageSetup в программе Excel
Когда я запускаю это из локальной системы, он работает и когда я копирую его на сервер и запускаюсь из службы, предоставляющей следующую ошибку.
Невозможно установить свойство Orientation класса PageSetup
Класс PageSetup Excel должен взаимодействовать с драйверами принтера на сервере. Если нет установленных драйверов принтера или доступа к ним, любые вызовы этого класса с вызовом исключения.
Вы должны убедиться, что на сервере установлен принтер по умолчанию, и установлены драйверы принтера. Кроме того, если вы получаете доступ к этому из ASP.net, есть проблемы с доступом, и вы должны убедиться, что учетная запись ASP.Net имеет разрешение на доступ к принтеру. См. Эту статью, в которой излагаются некоторые из вопросов более подробно: http://support.microsoft.com/?id=291298
Я не уверен, что вы используете приложение ASP.net. Но вот что я получил.
У меня есть ASP 4.0, и мой код в основном генерирует файл excel. После создания файла excel я экспортирую его в pdf. Это вызывает ту же проблему, что и у вас.
Как указывал BgRva, вам необходимо установить драйверы принтера. Класс PageSetup Excel должен взаимодействовать с драйверами принтера
У меня есть аналогичная проблема с запущенным связанным кодом в Windows 8, работающим под Mac Parallels (Virtual Machine). Для тех, кто занимается развертыванием Visual Studio на Mac Parallels, вот что я делаю:
- Отключить использование принтеров между Mac и Windows. Перейти к Parallels
(VM) > Настроить > Оборудование и нажмите «Печать». Снимите флажок «Добавить все Mac
принтеры и «Синхронизировать принтер по умолчанию»
Установить драйвер принтера в Windows
Чтобы получить назначенный IP-адрес одним и тем же беспроводным маршрутизатором
(если вам необходимо подключиться к принтеру по беспроводной сети), вам необходимо настроить
сеть как мост. Перейти к Parallels
(VM) > Настроить > Оборудование > «Сеть 1» и выберите «Тип сети» как «Аэропорт» и «Сервер DHCP» как «Авто»
Снова Excel (winXP/win2000srv)
Rotaredom
Снова Excel (winXP/win2000srv)
вот такое работает:
Rotaredom
Rotaredom
Rotaredom
любые мысли приветствуются
всем спасибо
Guest
вообщем в обоих случаях помог EventViewer + поиск на гугле описания ошибки.
Rotaredom
Rotaredom
помогли следующие магические операции (все выполняется на сервере):
A. в dcomcnfg установил для excel полный доступ для юзеров SYSTEM
B. установил «фиктивный» порт и на него настроил такой же фиктивный принтер
C. настроил права на этот принтер для юзера SYSTEM таким образом:
This method requires you to modify the registry using the Registry Editor.
WARNING: Using Registry Editor incorrectly can cause serious, system-wide problems that may require you to reinstall Windows to correct them. Microsoft cannot guarantee that any problems resulting from the use of Registry Editor can be solved. Use this tool at your own risk.
1. Ensure that the user you are currently logged into on the server has the desired printers installed.
2. Launch the Registry Editor (Regedit.exe).
3. Select the following key:
HKEY_CURRENT_USER
\Software\Microsoft\Windows NT\Current Version\Devices
4. From the Registry menu, click Export Registry File.
5. In the File Name text box, type c:\Devices.reg.
6. Select the following key:
HKEY_CURRENT_USER
\Software\Microsoft\Windows NT\Current Version\PrinterPorts
7. From the Registry menu, click Export Registry File.
8. In the File Name text box, type c:\PrinterPorts.reg.
9. Select the following key:
HKEY_CURRENT_USER
\Software\Microsoft\Windows NT\Current Version\Windows
10. From the Registry menu, click Export Registry File.
11. In the File Name text box, type c:\Windows.reg.
12. From the Start button, select Run. Open Devices.reg in Notepad by typing Notepad Devices.reg in Run dialog box.
13. Replace the text HKEY_CURRENT_USER with HKEY_USERS\.DEFAULT
14. Save the file. Then import it into the registry by double-clicking the file in Windows Explorer.
15. Repeat steps 13 through 15 for PrinterPorts.reg and Windows.reg.
ЗЫ: гугл рулит
Unable to set the Orientation property of the PageSetup class in Excel Program
When i run this from local sytem it is working and when i copy this to a server and will be run from a service giving following error.
Unable to set the Orientation property of the PageSetup class
4 Answers 4
The PageSetup class of Excel must interact with the printer drivers on the server. If there are no printer drivers installed or access to them is restricted, any calls to this class with throw an exception.
You should ensure a default printer is set on the server and there are printer drivers installed. Also, if you are accessing this from ASP.net there are access issues and you should ensure the ASP.Net account has permission to access the printer. See this article which lays out some of the issues in more detail: http://support.microsoft.com/?id=291298
I’m not sure if you are doing ASP.net application. But here’s what I got.
I have a ASP 4.0 and my code basically generate an excel file. Once excel file is generated, I export that to be a pdf. That’s causing the same issue u had.
The way to resolve it is to set the Load User Profile to true It’s under AppPool. right clicking it and you will see this property.
Check «default printer» in «Devices and Printers» page.
If any (redirected) printer is default change it. Default printer must not be any «redirected» one.
As BgRva pointed out, you need to install printer drivers. The PageSetup class of Excel must communicate with the printer drivers
I’m having similar issue running related code on Windows 8 operating under Mac Parallels (Virtual Machine). For anyone who are doing Visual Studio deployment on Mac Parallels, here’s what I’m doing:
Установить ориентацию в Ексель из 2006 делфи
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Делфи и ексель..
Есть поле эдит, есть кнопка, есть файл эксель. Нужно чтобы при нажатии кнопки текст из поля эдит.
Работа в ексель с делфи
Кто нибудь может подсказать как найти число(количество повторений) повторяющихся элементом массива.
Не могу установить AlphaSkins на Delphi 2006
читал много в интернете, делал как там. ничего не выходит. в либрей патч добавил путь.
Access2000, програмно установить ориентацию репорта
В эксссцессе 2000 ВБ примочки не работают. DataReportInvoice.Orientation = rptOrientPortrait КАк.
Его нужно указывать в разделе констант, т.е. вышеуказанный блок кода можно записать в виде
P.S. поправка в имени константы:xll а ndscape
Покажите Ваш код установки ориентации страницы вместе со скрином.
думаю, что причина в этом.
Постарайтесь проверить проект на машине с принтером.
Драйвер Microsoft XPS Document Writer можно установить из отдельного дистрибутива: Пакет Microsoft XPS EP.
Как установить программного ориентацию для разных экранов?
Здравствуйте! Для своей программы хочу такую логику: для телефонов ориентация только вертикальная.

Здравствуйте! Извините за столь наивный вопрос, но: как установить старенькую игру F1 2006? Скачал.
Лучший проект 2006-го года. Итоги Java-конкурса 2006.
Sun Microsystems при поддержке Министерства информационных технологий и связи РФ провело второй.
Какой делфи установить
какую версию Delphi лучше установить на Windows 7 что-бы нормально работал, без ошибок?
Нельзя установить свойство orientation класса pagesetup
Добрый вечер всем!
У меня такая проблема возникла, может кто подскажет.
При фармировании отчета в Excel необходимо поставить альбомный лист, делаю это так:

Shirson © ( 2006-10-11 12:03 ) [1]
Возможно, в этих версиях различаются значения констант xlLandscape и xlPortrait, хотя это было бы странно.
Запусти эксель и в его VBA проверь значения констант для xlLandscape и xlPortrait
msgbox(xlLandscape)
msgbox(xlPortrait)
для версии 2003 и XP
Если они отличаются, то нужно отлавливать версию экселя и использовать другие значения.
Если не отличаются, нужно пересмотреть вызов операции у установке ориентации страницы.

EvS © ( 2006-10-11 19:41 ) [3]
Используй константы из файлов ExcelXP, Excel2000
Не совсем понял как? Если возможно подробнее.
открой папку Delphi\Ocx\Servers там есть файлы Excel97.pas, ExcelXP.pas, Excel2000.pas и т.д., найдешь в них много интересного.






