Автор | Сообщение |
---|---|
Заголовок сообщения: Перестал работать Scicolorer
|
|
|
Какое-то время назад установила демо-версию Снегопата и Scicolorer-а. Пришлось повозиться с Scicolorer-ом, так как не хотели регистрироваться библиотеки, но в конце концов все заработало. Так получилось, что довольно долго не открывала конфигуратор, а тут открыла, и не работает Scicolorer. Открываю со стартера, никаких ошибок не пишет, в окошке доп. аддинами присутствует, но в модулях — обычный редактор. vcredist_x86 установлен и vcredist_x64 (у меня windows 7 x64) тоже, в addins.ini добавлены 2 строки. Еще раз зарегестрировала SciColorerV8.dll, все нормально зарегестрировалось, но ничего не работает. Уже не знаю, в чем может быть дело. Помогите! Если купить полную версию телепата, будет ли работать Scicolorer или проблема останется? |
Вернуться к началу |
|
orefkov |
Заголовок сообщения: Re: Перестал работать Scicolorer
|
|
Версии укажите снегопата и колорера. |
Вернуться к началу |
|
orefkov |
Заголовок сообщения: Re: Перестал работать Scicolorer
|
|
А так особых проблем не было. После регистрации с админскими правами у всех работает. |
Вернуться к началу |
|
оля |
Заголовок сообщения: Re: Перестал работать Scicolorer
|
|
версия снегопата 1.1.1.2b, колорер скачала на сайте, написано что это первая версия от 13.06.12. Библиотеку регистрировала с правами администратора. На всякий случай разрегистрировала и зарегистрировала снова. |
Вернуться к началу |
|
оля |
Заголовок сообщения: Re: Перестал работать Scicolorer
|
|
фу.., все работает. Надо было, чтоб курсор был в модуле и оттуда нажимать cntrl+M. А я вызывала из контекстного меню снегопата — выполнить макрос. Надо же, так все просто было, а я целый день промучилась. |
Вернуться к началу |
|
v7: Ошибка создания объекта «MSComctlLib.ImageListCtrl» |
Я |
10.02.16 — 08:28
Пытаюсь запустить конфу с ПоставщикомДанных на машине с Win7/64.
получаю:
Ошибка при создании объекта ОбъектImageListCtrl = СоздатьОбъект(«MSComctlLib.ImageListCtrl»);
Офис стоит 2010-й,
дополнительно comdlg32.ocx и MSCOMCTL.OCX поставил и зарегистрировал. Не помогло.
В реестре MSComctlLib.ImageListCtrl присутствует. Права на чтение вроде есть — ругани в Процмоне не вижу.
Что я не так делаю, и что сделать?
1 — 10.02.16 — 08:30
блин, кто может — исправьте тему на
Ошибка создания объекта «MSComctlLib.ImageListCtrl»
плз….
2 — 10.02.16 — 09:04
Офис 64бит? ))
3 — 10.02.16 — 09:06
(2) да
4 — 10.02.16 — 09:06
поставить хрюшечный?
5 — 10.02.16 — 09:12
(3) А 77 у тебя 32, если не 16…
Вот и не видит…
6 — 10.02.16 — 09:13
(5) «ты не умничай, ты пальцем покажи!»©
делать-то чо?
7 — 10.02.16 — 09:13
Microsoft Visual Basic 6.0 Common Controls ставил, он 32-разрядный
8 — 10.02.16 — 09:37
попробовал поставить и удалить хрюшечый офис. Ничего не изменилось…
9 — 10.02.16 — 10:34
Продолжаю наблюдения!©
——————-
попробовал Подскажите….»Создание элемента управления MSComctlLib.Toolbar не удалось»
Шел=СоздатьОбъект(«WScript.Shell»);
КаталогСистемы=Шел.ExpandEnvironmentStrings(«%WinDir%»);
Шел.Run(«cmd /c regsvr32 /s comdlg32.ocx»,0,-1);
Шел.ExpandEnvironmentStrings — выполняется, а Шел.Run — нет.
10 — 10.02.16 — 13:54
попробую поднять ветку…
11 — 10.02.16 — 15:31
12 — 10.02.16 — 15:32
13 — 10.02.16 — 15:33
14 — 10.02.16 — 15:37
(0) регь все ocx и dll из папки SysWOW64 и купымк32 оттуда же
15 — 10.02.16 — 15:39
(11) не помогло
16 — 10.02.16 — 15:40
(14) все подряд???
17 — 10.02.16 — 15:41
(14) кстати, OnDrop у меня так и не перехватываются.
вирус криворукости?
18 — 10.02.16 — 15:43
(16) ну, хотя бы
%Winddir%SysWOW64regsvr32.exe MSCOMCTL.OCX
19 — 10.02.16 — 15:45
(18) дык давно. пишет, что зарегистрировано успешно…
20 — 10.02.16 — 15:46
(18) в (0) «comdlg32.ocx и MSCOMCTL.OCX поставил и зарегистрировал. Не помогло.»
21 — 10.02.16 — 15:46
(18) именно с этой папки ?
22 — 10.02.16 — 15:48
(21) и из этой, и из систем32
23 — 10.02.16 — 15:50
Это работает ?
Процедура Сформировать()
Шел=СоздатьОбъект(«WScript.Shell»);
КаталогСистемы=Шел.ExpandEnvironmentStrings(«%WinDir%»);
Если ФС.СуществуетФайл(КаталогСистемы+»system32comdlg32.ocx»)=0 Тогда
Предупреждение(«Нет в системе файла comdlg32.ocx»);
Возврат;
КонецЕсли;
Шел.Run(«cmd /c regsvr32 /s comdlg32.ocx»,0,-1);
Текст=СоздатьОбъект(«Текст»);
Текст.ДобавитьСтроку(«HKLMSOFTWAREClassesLicensesED4B87C4-9F76-11d1-8BF7-0000F8754DA1
|knlggnmntgggrninthpgmnngrhqhnnjnslsh
|HKLMSOFTWAREClassesLicenses96EFC40-6ABF-11cf-850C-08002B30345D
|knsgigmnmngnmnigthmgpninrmumhgkgrlrk
|HKLMSOFTWAREClassesLicenses190B7910-992A-11cf-8AFA-00AA00C00905
|gclclcejjcmjdcccoikjlcecoioijjcjnhng
|HKLMSOFTWAREClassesLicenses2c49f800-c2dd-11cf-9ad6-0080c7e7b78d
|mlrljgrlhltlngjlthrligklpkrhllglqlrk
|HKLMSOFTWAREClassesLicenses4250E830-6AC2-11cf-8ADB-00AA00C00905
|kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun
|HKLMSOFTWAREClassesLicenses4D553650-6ABE-11cf-8ADB-00AA00C00905
|gfjmrfkfifkmkfffrlmmgmhmnlulkmfmqkqj
|HKLMSOFTWAREClassesLicenses556C75F1-EFBC-11CF-B9F3-00A0247033C4
|xybiedobrqsprbijaegcbislrsiucfjdhisl
|HKLMSOFTWAREClassesLicenses57CBF9E0-6AA7-11cf-8ADB-00AA00C00905
|aahakhchghkhfhaamghhbhbhkbpgfhahlfle
|HKLMSOFTWAREClassesLicenses5f54e750-ce26-11cf-8e43-00a0c911005a
|mnlnnimimnoiuilnvjkinnkitjwjnimntntm
|HKLMSOFTWAREClassesLicenses6FB38640-6AC7-11cf-8ADB-00AA00C00905
|gdjkokgdldikhdddpjkkekgknesjikdkoioh
|HKLMSOFTWAREClassesLicenses72E67120-5959-11cf-91F6-C2863C385E30
|ibcbbbebqbdbciebmcobmbhifcmciibblgmf
|HKLMSOFTWAREClassesLicenses78E1BDD1-9941-11cf-9756-00AA00C00908
|yjrjvqkjlqqjnqkjvprqsjnjvkuknjpjtoun
|HKLMSOFTWAREClassesLicenses7C35CA30-D112-11cf-8E72-00A0C90F26F8
|whmhmhohmhiorhkouimhihihwiwinhlosmsl
|HKLMSOFTWAREClassesLicenses899B3E80-6AC6-11cf-8ADB-00AA00C00905
|wjsjjjlqmjpjrjjjvpqqkqmqukypoqjquoun
|HKLMSOFTWAREClassesLicenses8B7FE740-50AC-101B-A3C9-08002B2F49FB
|mjgcqcejfchcijecpdhckcdjqigdejfccjri
|HKLMSOFTWAREClassesLicenses8CC49940-3146-11CF-97A1-00AA00424A9FRetail
|yubcdcprktpjtapmmfdacmupasbhscddncgp
|HKLMSOFTWAREClassesLicenses8CC49940-3146-11CF-97A1-00AA00424A9F
|
|HKLMSOFTWAREClassesLicenses9E799BF1-8817-11cf-958F-0020AFC28C3B
|uqpqnqkjujkjjjjqwktjrjkjtkupsjnjtoun
|HKLMSOFTWAREClassesLicensesB1EFCCF0-6AC1-11cf-8ADB-00AA00C00905
|qqkjvqpqmqjjpqjjvpqqkqmqvkypoqjquoun
|HKLMSOFTWAREClassesLicensesBC96F860-9928-11cf-8AFA-00AA00C00905
|mmimfflflmqmlfffrlnmofhfkgrlmmfmqkqj
|HKLMSOFTWAREClassesLicensesDC4D7920-6AC8-11cf-8ADB-00AA00C00905
|iokouhloohrojhhhtnooiokomiwnmohosmsl
|HKLMSOFTWAREClassesLicensesE32E2733-1BC5-11d0-B8C3-00A0C90DCA10
|kmhfimlflmmfpffmsgfmhmimngtghmoflhsg
|HKLMSOFTWAREClassesLicensesF4FC596D-DFFE-11CF-9551-00AA00A3DC45
|mbmabptebkjcdlgtjmskjwtsdhjbmkmwtrak
|HKLMSOFTWAREClassesLicenses
|Licensing: Copying the keys may be a violation of established copyrights.»);
Для к=1 По Текст.КоличествоСтрок()/2 Цикл
Попытка
Шел.RegWrite(Текст.ПолучитьСтроку(к*2-1)+»»,Текст.ПолучитьСтроку(к*2));
Исключение
КонецПопытки;
КонецЦикла;
Скрипт=СоздатьОбъект(«MSScriptControl.ScriptControl»);
Скрипт.language=»javascript»;
Диалог=Скрипт.Eval(«Диалог=new ActiveXObject(‘MSComDlg.CommonDialog’)»);
Диалог.ShowColor();
Сообщить(Скрипт.Eval(«Диалог.Color»));
КонецПроцедуры
24 — 10.02.16 — 15:54
(23) см (9)
25 — 10.02.16 — 15:55
(23) попытаться через РаботаСРегистромWin() ?
26 — 10.02.16 — 20:33
(25) дай весь код поэкспериментировать…
так-то, после
ОбъектImageListCtrl = СоздатьОбъект(«MSComctlLib.ImageListCtrl»);
в отладчике
ОбъектImageListCtrl = OLE.IImageList
при первом запуске стал устанавливать что-то из офиса 13-го
при следующих все ок.
винда — 10-ка, офис — 16-ый
27 — 10.02.16 — 20:34
+26 винда — 64 бит, офис 32 бит
28 — 10.02.16 — 20:41
удалил 13-ый офис — не работает ))
29 — 11.02.16 — 06:30
30 — 11.02.16 — 08:10
(29) ок, офис восстановлю попробую еще раз.
31 — 11.02.16 — 08:10
(23) внес в реестр через РаботаСРегистромWin, проверил ручками — а все равно не работает
32 — 11.02.16 — 08:11
(28) а «13-й офис» — это какой? 2008-й?
33 — 11.02.16 — 08:22
пробуй, с 2007 офисом
34 — 11.02.16 — 08:22
где-то был отдельный установщик
35 — 11.02.16 — 08:22
нужных вк от мелкомягких
36 — 11.02.16 — 08:22
(32) 13-ый в смысле 2013..
37 — 11.02.16 — 08:35
(34)»отдельным установщиком» тоже пробовал.
Ищу офис 2007
38 — 11.02.16 — 08:51
(37) Вово таже хрень.
Потавил 10 офис не взлетел УправлениеЗакладками.
Откатил на 2007 все заработало.
39 — 11.02.16 — 09:45
установка 2007-го не помогла.
Зато добавилась ошибка JScript при запуске конфигуратора: [60,1] невозможно создание объекта сервером программирования объектов.
40 — 11.02.16 — 09:59
ну низнаю
у меня 2008 интерпрайс р2
офис 2007 поставщикданных работает нормально.
41 — 11.02.16 — 10:03
причем конфигуратор к офису вообще никакого отношения не имеет.
разве что какие то левые скрипты используешь.
вот у меня что под конфигуратором стартует:
SciColorer
SciLexer
telepat
и скрипты:
Intellisence
SaveMD
SciColorer
telepat
TurboMD.
все работает нормально.
42 — 11.02.16 — 10:14
(41) видимо, офис при установке переставил что-то из джавы…
в заголовке окна модуля, в котором ошибка, не видно.
а в работе опенконфа-телепата пока сбоев не обнаружил.
43 — 11.02.16 — 10:41
Снес 2007 офис — ошибка при запуске пофигуратора так и осталась, ошибка при создании ImageListCtrl тоже осталась.
полез опять в процмон…
44 — 11.02.16 — 10:59
(43) ну тоди ой!
45 — 11.02.16 — 15:17
в общем, не может в реестре найти
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionAppCompatFlagsLayersC:WindowsSysWOW64MSCOMCTL.OCX
странно, ведь зарегистрирована…
продолжаю копать…
HawkEye
46 — 11.02.16 — 19:55
переустановил 2016 офис — не работает ))))
видимо нужен 2013 установленный через click-to-run, тогда при первом запуске автоматически загрузится и установится нужная длл…
BOM View Revision cannot be create
Software Versions/Configuration:
========================================
Customer’s environment: TC 12.1.0.2
Also duplicated by Gtac on TC12.2.0.1
Description of Problem:
========================================
If I have an Item with at least 2 Revisions without BOM.
I send the first revision to the Structure Manager.
I add a child to this revision making a Copy/ Paste or an Add.
The BOM View and The BOM View Revision are automatically created.
Now, I send the second Revision to the structure manager.
I cannot add a child to this revision, I have the following error message : You have insufficient privilege for the attempted operation
Note: The same use case works fine on TC11.5 and TC12.0 (no error message, the structure is saved), but not in TC11.6.0.6 and TC12.2.0.1.
It is a regression.
Steps to Duplicate:
========================================
1. Create a Item
2. Revise this Item
3. Send the first revision to the Structure Manager
4. Add a child to the first revision
5. Save the modification in the structure Manager
6. Now, send the second revision to the structure manager
7. Add a child to the second revision
8. Save the modification in the structure Manager
Result:
Error Message saying : You have insufficient privilege for the attempted operation
Duplicated in GTAC Office in OOTB Environment: (Y/N with an explanation if No)
============================================================
Y
Additional data provided: (Y/N)
========================
logs (9592783_PR_logs.zip)
Additional Info:
============
In case the Product Development team would consider this change of behaviour is designed as intended, please convert this PR as an ER or Doc PR with Doc update
Siemens Digital Industries Software believes that the problem you reported where BOM View Revision cannot be create will be resolved by code changes made to the release of our product Teamcenter version 12.3.
PR 9592783
Product Information:
- Product: TEAMCENTER , Application: STRUCTURE_MGR , Version: V12.1.0.2
Brainenjii писал(а):может быть не указан файл отчета в компоненте?
эээм .. это где? я уже везде понажимала, где могла -_-
Добавлено спустя 49 секунд:
IvanI писал(а):Brainenjii
или установить StoreInDFM в TRUE
установила …. все равно тоже самое окошко выскакивает и быстро закрывается типа Preparing и тд … причем это если использовать ShowReport …
а если писать frReport1.Preview, то ошибка …. которая выше описана, почему же не работает …
Добавлено спустя 5 минут 24 секунды:
Все, все заработало сейчас напишу почему.
Добавлено спустя 5 минут 22 секунды:
А дело было вот в чем, после того как мне сказали проверить datasource, я проверила .. только вот сам отчет не проверила … каким-то образом он оказался пустым .. то есть на нем не было ни заголовков, ни полей ничего … хотя я делала их для отображения и все было прекрасно .. перед выходом я сохранилась, все ок … но почему-то мои действия не сохранились, причем такое уже не 1 раз … уже раза 4 как лазарус не сохраняет мои последние действия с базой данных и приходится заново все делать … это очень странно … но я всегда сохраняюсь, по несколько раз жму на сохранение .. я уже на всякий случай пятьсот копий понаделала .. чтоб последние варианты работы не терялись .. тему можно закрыть )) переполошила тут всех .. всем спасипки за помощь, чтоб я без вас делала ).
0 Пользователей и 1 Гость просматривают эту тему.
- 6 Ответов
- 1339 Просмотров
Учусь делать компоненты.
https://mb4.ru/cms/joomla4/724-developing-a-basic-component-for-joomla-4.html
schooltechcontent.xml
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" method="upgrade">
<!-- атрибут 'version' для тега расширения больше не используется --> <name>SchoolTechContent</name>
<!-- Следующие элементы являются необязательными и не содержат ограничений на форматирование -->
<creationDate>Janiary 2022</creationDate>
<!-- Фиктивный автор, не стесняйтесь заменять его в любом месте, где вы его видите -->
<author></author>
<authorUrl></authorUrl>
<copyright></copyright>
<license></license>
<!-- Строка 'version' записывается в таблицу компонентов -->
<version>0.0.1</version>
<!-- Описание является необязательным и по умолчанию используется имя сомпонента -->
<description>
Schootech content
</description>
<!-- Это пространство имен PHP, в котором организован
код расширения. Он должен следовать этому формату:
VendorComponentComponentName
"Vendor" может быть названией компании или вашим собственным именем
Раздел "ComponentName" ДОЛЖЕН соответствовать имени, используемому
везде для вашего компонента. Каким бы ни было имя этого XML-файла,
пространство имен должно совпадать (заглавные/прописные буквы не учитываются).
-->
<namespace path="src/">MuCompaniComponentschooltechcontent</namespace>
<administration>
<!-- Ссылка, которая появится в меню админки Joomla "Components" -->
<menu link="index.php?option=com_schooltechcontent">SchoolTech</menu>
<!-- Список файлов и папок для копирования.
Обратите внимание на атрибут "folder".
Это имя папки в пакете компонентов для копирования в CMS Joomla 4. -->
<files folder="admin/">
<folder>services</folder>
<folder>src</folder>
<folder>tmpl</folder>
</files>
</administration>
</extension>
admin/services/provider.php
<?phpdefined('_JEXEC') or die;
use JoomlaCMSDispatcherComponentDispatcherFactoryInterface;
use JoomlaCMSExtensionComponentInterface;
use JoomlaCMSExtensionMVCComponent;
use JoomlaCMSExtensionServiceProviderComponentDispatcherFactory;
use JoomlaCMSExtensionServiceProviderMVCFactory;
use JoomlaCMSMVCFactoryMVCFactoryInterface;
use JoomlaDIContainer;
use JoomlaDIServiceProviderInterface;
return new class implements ServiceProviderInterface {
public function register(Container $container): void {
$container->registerServiceProvider(new MVCFactory('\MuCompani\Component\SchoolTechContent'));
$container->registerServiceProvider(new ComponentDispatcherFactory('\MuCompani\Component\SchoolTechContent'));
$container->set(
ComponentInterface::class,
function (Container $container) {
$component = new MVCComponent($container->get(ComponentDispatcherFactoryInterface::class));
$component->setMVCFactory($container->get(MVCFactoryInterface::class));
return $component;
}
);
}
};
admin/src/Controller/DisplayController.php
<?phpnamespace MuCompaniComponentschooltechcontentAdministratorController;
defined('_JEXEC') or die;
use JoomlaCMSMVCControllerBaseController;
/**
* Контроллер по умолчанию компонента SchoolTechContent
*
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*/
class DisplayController extends BaseController {
/**
* Представление по умолчанию для метода отображения.
*
* @var string
*/
protected $default_view = 'schoolcontent';
public function display($cachable = false, $urlparams = array()) {
return parent::display($cachable, $urlparams);
}
}
admin/src/View/SchoolContent/HtmlView.php
<?phpnamespace MuCompaniComponentschooltechcontentAdministratorController;
defined('_JEXEC') or die;
use JoomlaCMSMVCControllerBaseController;
/**
* Контроллер по умолчанию компонента SchoolTechContent
*
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*/
class DisplayController extends BaseController {
/**
* Представление по умолчанию для метода отображения.
*
* @var string
*/
protected $default_view = 'schoolcontent';
public function display($cachable = false, $urlparams = array()) {
return parent::display($cachable, $urlparams);
}
}
admin/tmpl/schoolcontent/default.php
<?phpnamespace MuCompaniComponentschooltechcontentAdministratorViewSchoolContent;
defined('_JEXEC') or die;
use JoomlaCMSMVCViewHtmlView as BaseHtmlView;
/**
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*
* [member=126442]copyright[/member] Copyright (C) 2021 John Smith. All rights reserved.
* @license GNU General Public License version 3; see LICENSE
*/
/**
* Основной вид в админке "SchoolTechContent"
*/
class HtmlView extends BaseHtmlView {
/**
* Отображение основного вида "SchoolTechContent"
*
* @param string $tpl Имя файла шаблона для анализа; автоматический поиск путей к шаблону.
* @return void
*/
function display($tpl = null) {
parent::display($tpl);
}
}
Собираю все это в архив com_schooltechcontent.zip и устанавливаю. В итоге, в меню компонента выводится
Некорректный класс контроллера: display
При копипасте из примера все работает нормально.
Где я ошибся (подозреваю, что где-то в admin/src/View/SchoolContent/HtmlView.php)?
admin/src/View/SchoolContent/HtmlView.php
namespace MuCompaniComponentschooltechcontentAdministratorViewSchoolContent;
admin/tmpl/schoolcontent/default.php
Вообще убрать все и выводить только верстку, к примеру
admin/src/View/SchoolContent/HtmlView.php
И чем это отличается от того, что я написал ? Или это в смысле, что с ним что-то не так ? А что именно ?
Я пробовал в этом файле только эту строчку и оставить, но от опять выводит неверный класс display
« Последнее редактирование: 31.01.2022, 08:24:18 от leha111 »
Записан
admin/src/View/SchoolContent/HtmlView.php
И чем это отличается от того, что я написал ? Или это в смысле, что с ним что-то не так ? А что именно ?
Я пробовал в этом файле только эту строчку и оставить, но от опять выводит неверный класс display
admin/tmpl/schoolcontent/default.php
Здесь только вёрстку оставить, это же макет по сути. Там не должно быть классов.
Косяк ! То, что записано, как admin/tmpl/schoolcontent/default.php — это, на самом деле, admin/src/View/SchoolContent/HtmlView.php. А реально это файл выгляди так.
<?php/**
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*
* [member=126442]copyright[/member]
* @license
*/
// Нет прямого доступа к этому файлу
defined('_JEXEC') or die('Всем кыш! =D');
?>
<h2>ТЕСТ</h2>
Попробовал немного переделать
schooltechcontent.xml
<?xml version="1.0" encoding="utf-8"?>
<extension type="component" method="upgrade">
<!-- атрибут 'version' для тега расширения больше не используется --> <name>SchoolTechContent</name>
<!-- Следующие элементы являются необязательными и не содержат ограничений на форматирование -->
<creationDate></creationDate>
<!-- Фиктивный автор, не стесняйтесь заменять его в любом месте, где вы его видите -->
<author>MuCompani</author>
<authorUrl></authorUrl>
<copyright></copyright>
<license></license>
<!-- Строка 'version' записывается в таблицу компонентов -->
<version>0.1</version>
<!-- Описание является необязательным и по умолчанию используется имя сомпонента -->
<description>
Контент для сайта SchoolTech
</description>
<!-- Это пространство имен PHP, в котором организован
код расширения. Он должен следовать этому формату:
VendorComponentComponentName
"Vendor" может быть названией компании или вашим собственным именем
Раздел "ComponentName" ДОЛЖЕН соответствовать имени, используемому
везде для вашего компонента. Каким бы ни было имя этого XML-файла,
пространство имен должно совпадать (заглавные/прописные буквы не учитываются).
-->
<namespace path="src/">MuCompaniComponentSchoolTechContent</namespace>
<administration>
<!-- Ссылка, которая появится в меню админки Joomla "Components" -->
<menu link="index.php?option=com_schooltechcontent">SchoolTechContent</menu>
<!-- Список файлов и папок для копирования.
Обратите внимание на атрибут "folder".
Это имя папки в пакете компонентов для копирования в CMS Joomla 4. -->
<files folder="admin/">
<folder>services</folder>
<folder>src</folder>
<folder>tmpl</folder>
</files>
</administration>
</extension>
admin/services/provider.php
<?phpdefined('_JEXEC') or die;
use JoomlaCMSDispatcherComponentDispatcherFactoryInterface;
use JoomlaCMSExtensionComponentInterface;
use JoomlaCMSExtensionMVCComponent;
use JoomlaCMSExtensionServiceProviderComponentDispatcherFactory;
use JoomlaCMSExtensionServiceProviderMVCFactory;
use JoomlaCMSMVCFactoryMVCFactoryInterface;
use JoomlaDIContainer;
use JoomlaDIServiceProviderInterface;
return new class implements ServiceProviderInterface {
public function register(Container $container): void {
$container->registerServiceProvider(new MVCFactory('\MuCompani\Component\SchoolTechContent'));
$container->registerServiceProvider(new ComponentDispatcherFactory('\MuCompani\Component\SchoolTechContent'));
$container->set(
ComponentInterface::class,
function (Container $container) {
$component = new MVCComponent($container->get(ComponentDispatcherFactoryInterface::class));
$component->setMVCFactory($container->get(MVCFactoryInterface::class));
return $component;
}
);
}
};
admin/src/Controller/DisplayController.php
<?phpnamespace MuCompaniComponentSchoolTechContentAdministratorController;
defined('_JEXEC') or die;
use JoomlaCMSMVCControllerBaseController;
/**
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*
* [member=126442]copyright[/member] Copyright (C) 2021 John Smith. All rights reserved.
* @license GNU General Public License version 3; see LICENSE
*/
/**
* Контроллер по умолчанию компонента SchoolTechContent
*
* @package Joomla.Administrator
* @subpackage com_schooltechcontent
*/
class DisplayController extends BaseController {
/**
* Представление по умолчанию для метода отображения.
*
* @var string
*/
protected $default_view = 'schooltemplate';
public function display($cachable = false, $urlparams = array()) {
return parent::display($cachable, $urlparams);
}
}
admin/src/View/SchoolContent/HtmlView.php
<?phpnamespace MuCompaniComponentSchoolTechContentAdministratorViewSchoolContent;
defined('_JEXEC') or die;
use JoomlaCMSMVCViewHtmlView as BaseHtmlView;
/**
* @package Joomla.Administrator
* @subpackage com_helloworld
*
* [member=126442]copyright[/member] Copyright (C) 2021 John Smith. All rights reserved.
* @license GNU General Public License version 3; see LICENSE
*/
/**
* Основной вид в админке "SchoolTechContnent"
*/
class HtmlView extends BaseHtmlView {
/**
* Отображение основного вида "SchoolTechContnent"
*
* @param string $tpl Имя файла шаблона для анализа; автоматический поиск путей к шаблону.
* @return void
*/
function display($tpl = null) {
parent::display($tpl);
}
}
admin/tmpl/schooltemplate/default.php
<?php/**
* @package Joomla.Administrator
* @subpackage com_helloworld
*
* [member=126442]copyright[/member] Copyright (C) 2021 John Smith. All rights reserved.
* @license GNU General Public License version 3; see LICENSE
*/
// Нет прямого доступа к этому файлу
defined('_JEXEC') or die('Всем кыш! =D');
?>
<h2>Hello world!</h2>
Теперь он пишет «404 Не удалось найти представление [name, type, prefix]: schooltemplate, HTML, Administrator.
«
Зачем ты сюда это запостил?
https://github.com/joomla/joomla-cms/issues/36908
Это не проблема CMS, грузишь людей непонятно чем, ещё и ссылки там оставляешь на русскоязычый ресурс. Закрой там issue, пожалуйста.
Теперь он пишет «404 Не удалось найти представление [name, type, prefix]: schooltemplate, HTML, Administrator.
Тебе эта ошибка явно же пишет, что пытается открыть представление с именем schooltemplate. А у тебя какое? SchoolContent