Вы можете получить доступ к реестру окна от Adobe Air?

голоса
7

(Y / N)

Изменить: Доступ только для чтения в порядке.

Задан 06/08/2008 в 17:47
источник пользователем
На других языках...                            


8 ответов

голоса
7

Я не пробовал это, но я думаю, что я нашел обходной путь.

Adobe AIR не может писать в реестре Windows, но вы можете, однако, начать собственный процесс в среде AIR 2. Вот блог , который показывает , как сделать это: http://www.adobe.com/devnet/air/flex/quickstart /articles/interacting_with_native_process.html

Теперь на Windows, вы можете внести изменения в реестр Windows, с REG-файлов. .reg файлы только простые текстовые файлы, читать с помощью regedit.exe. Таким образом, в теории, вы можете написать REG-файл в файловой системе, а затем запустить regedit.exe с файлом .reg прошел в и ... TaDa! Вы только изменил реестр Windows, из приложения AIR!

Для того, чтобы прочитать значение, вы можете использовать функцию экспорта REGEDIT , чтобы записать в файл Изотерм и чтение из файла рег. Детали для опций программы Regedit в: http://www.robvanderwoude.com/regedit.php

Вот некоторые дополнительные ресурсы:
REG - файл синтаксис: http://support.microsoft.com/kb/310516
запись в файл с AIR: http://www.adobe.com/devnet/air/flex/articles/exploring_file_capabilities. HTML

Ответил 23/06/2011 в 18:33
источник пользователем

голоса
2

Если вы можете, я бы ужаснулся.

Почему вы ужасаться? Air является настольной платформой, и иметь доступ к API, ОС (такие, как доступ к реестру) делает много смысла.

Это, как говорится, не поддерживается в настоящее время (и, как Adobe, кажется, очень Mac-ориентированных, я сомневаюсь, что это когда-либо будет добавлено).

Я остановился на захват имен пользователей от имени каталога пользователя

Использование File.userDirectory.name будет работать в большинстве случаев, но это кажется очень хрупкой реализацией, зависит от операционной системы, поддерживая конвенцию, имеющее имя в качестве своего каталога. Я могу думать о нескольких возможных вещей, которые могли бы нарушить его (играя с TweakUI и т.д.).

Ответил 19/08/2008 в 05:47
источник пользователем

голоса
2

Если ваше желание, чтобы заставить пользователя также установить другое приложение, вы можете написать небольшой C # или C ++ окна сервис, который просто открывает сокет, который обеспечивает своего рода протокол для доступа к реестру. Затем в AIR можно использовать класс сокет для отправки сообщений в / из службы C #, который будет возвращать результаты в приложении AIR.

Когда приложение загружает вы можете попытаться подключить к гнезду, и если соединение отвергается вы могли бы подсказать пользователю загрузить / установить службу.

Что касается прямого доступа к реестру Я уверен, что Adobe не допустит, что с AIR.

Ответил 07/08/2008 в 17:37
источник пользователем

голоса
1

Вот пример модификации реестра Windows в Adobe Air с помощью NativeProcess и Python. Таким образом, вы можете добавить, удалить или считывающий ключи только одной строки кода !!

Скачать: Модификатор Adobe Air реестра на Github

Ответил 23/10/2013 в 20:49
источник пользователем

голоса
1

Немного поздно, но я получил пожелание от клиента , чтобы прочитать некоторые значения из реестра , когда проект был почти закончен. Если бы было больше таких типов желаний, я бы никогда не выбрал AIR. Но я нашел хорошее расширение с FluorineFx, и расширяя его, теперь я могу прочитать строку и DWord значения из реестра. Только для Windows: http://aperture.fluorinefx.com/

Ответил 03/06/2009 в 23:32
источник пользователем

голоса
1

Вы пытаетесь определить, является ли пользователь администратором или нет?

В этом случае вы могли бы град это имя, с «File.userDirectory.name».

И я думаю, чтобы выяснить, если пользователь является администратором, вероятно, можно попытаться получить доступ к файлу, который требует прав администратора (возможно, попытайтесь писать файл в Windows / System32). Если доступ к файлу не удается, вероятно, можно предположить, что пользователь находится под ограниченной учетной записью.

Ответил 07/08/2008 в 21:02
источник пользователем

голоса
0

Будьте очень осторожны, если вы решили создать сокет-сервер, который прослушивает для команд реестра. Вы потенциально создает брешь в безопасности и персональных брандмауэров пользователей могут получить в пути с точки зрения удобства использования.

Ответил 07/08/2008 в 21:19
источник пользователем

голоса
0

Вы могли бы теоретически изменить существующие файлы реестра, но я очень отговорить от этой идеи.

Ответил 07/08/2008 в 17:39
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more