Как запустить программу GUI в службе Windows?

Просто следуйте инструкциям по извлечению кода из файла .aar Пример: libraryproject.aar

1. Переименуйте расширение файла библиотеки в ". Jar" ex.libraryproject.jar

2. Извлеките файл в папку.

3.Folder будет иметь библиотечных файлов AndroidManifest , ресурсов и , используемых в проекте библиотеки Android.

4.Folder также имеет файл classes.jar , в котором будут все классы в библиотеке.

5.Для открытия файла classes.jar используйте инструмент jd-gui .

6.В инструменте jd-gui Файл -> Открыть файл-> найдите и выберите файл classes.jar .

Поздно, но поможет новым зрителям.

8
задан marc_s 4 June 2009 в 05:31
поделиться

4 ответа

Джон и jdigital правы - насколько я понимаю, службы обычно могут иметь либо доступ к рабочему столу (вы должны использовать localsystem), либо доступ к сети (вам нужно указать учетную запись для запуска).

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

2
ответ дан 6 December 2019 в 01:40
поделиться

Основными преимуществами Lua как языка программирования (помимо возможности встраивания) являются

  • Мощная и эффективная хеш-таблица в качестве основной структуры данных
  • Библиотека обработки строк с отличным балансом сложности и выразительной силы
  • Первоклассные функции и общие для цикла
  • Автоматическое управление памятью !!

Трудно найти короткий пример, который все это иллюстрирует. В моем каталоге ~ / bin находится 191 скрипт Lua; вот тот, который берет вывод pstotext и объединяет строки, заканчивающиеся дефисом:

local function  printf(...) return io.stdout:write(string.format(...)) end
local function eprintf(...) return io.stderr:write(string.format(...)) end

local strfind, strlen = string.find, string.len

function joined_lines(f)
  return coroutine.wrap(function()
                          local s = ''
                          for l in f:lines() do
                            s = s .. l
                            local n = strlen(s)
                            if strfind(s, '[%-\173]$', n-1) then
                              s = string.sub(s, 1, n-1)
                            else
                              coroutine.yield(s)
                              s = ''
                            end
                          end
                        end)
end

-- printf('hyphen is %q; index is %d\n', '­', string.byte('­'))

for _, f in ipairs(arg) do
  for l in joined_lines(io.popen('pstotext ' .. f, 'r')) do
    printf('%s\n', l)
  end
end

Этот пример показывает несколько преимуществ, но не делает ничего интересного с таблицами.

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

0
ответ дан 6 December 2019 в 01:40
поделиться

Возможно, вы работаете не с той оконной станцией или рабочим столом. См. Этот справочник Microsoft по оконным станциям и рабочим столам .

0
ответ дан 6 December 2019 в 01:40
поделиться

I believe that what you are trying to do may be considered a security vulnerability. It is also not likely to work in some cases as well. I think jdigital is correct in that it has to do with window stations and trying to get access to the current user window station and it's desktop. This is confused a lot when you are under under a terminal services server where there are multiple current window stations. Microsoft really don't want you to what you want and they make it harder with every release of windows.

I think your best bet is to solve the problem from another angle and just create a GUI application that the user runs (manaully or automatically at login) and it talks to your service.

0
ответ дан 6 December 2019 в 01:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: