Как использовать C# с AIR?

В GCP использует команду оболочки внутри вашего проекта:

$ gsutil defacl set public-read gs://your-bucket-name

после использования:

$ gsutil ls -L -b gs://your-bucket-name 

для просмотра конфигурации ACL вашего сегмента.

https://codelabs.developers.google.com/codelabs/cloud-upload-objects-to-cloud-storage/#0

5
задан GurdeepS 20 April 2009 в 22:38
поделиться

5 ответов

Есть скрипт сборки создает файл свойств, содержащий версию. Это хорошая идея, чтобы получить ревизию # непосредственно из SVN. Таким образом, вы можете обратиться к нему в тестах. Поместите этот файл свойств в упакованный файл и прочитайте его во время выполнения. Обычно в качестве параметров для ant scrpt устанавливаются старшая и младшая версии, а SVN автоматически управляет ревизией и дает непротиворечивый номер сборки для ссылок.

Эта цель фрагмента запускает командную строку svn и выводит ее во временный файл (svndump). Затем создайте строку xx.yy.zz, поместите ее в другой файл, который позже будет включен в jar. Обратите внимание, что xx.yy взяты из внешних параметров, это версия Major-Minor.

<target name="getrev">
    <exec executable="svn" output="svndump">
        <arg value="info"/>
        <arg value="${my.svn.url}"/>
    </exec>

    <property file="svndump"/>
    <property name="my.build" value="${Revision}"/>
    <property name="my.rev" value="${my.ver}.${my.build}"/>
    <echo message="current revision is ${my.rev}"/>

    <property name="my.dir.dist" value="${my.dir.root}/dist/${my.rev}"/>
    <echo message="${my.rev}" file="${my.dir.projects}/revision"/>

    <delete file="svndump"/>
</target>
- 121 --- 1491802--

Ваши параметры в AIR ограничены HTML / JS, Flash / ActionScript или Flex. Нет поддержки других языков и фреймворков.

8
ответ дан 18 December 2019 в 13:19
поделиться

Slukse is correct -- it depends on what you mean by "alongside."

Obviously you can't compile C# code into a SWF -- that much we know. But you can certainly embed (as davr suggests) an ActiveX control into a .NET Forms app, load the SWF into that control, and use the ExternalInterface API to bridge the C# code running in the desktop app and the ActionScript code running in the SWF. If by alongside you mean writing server-side C# code to render data consumable by the Flex app, then of course, you can do that, too -- there's plenty of documentation out there covering how to connect a Flash or Flex (or AIR, by extension) app to Web Services of a variety of flavors, including the relatively new-ish WCF stuff.

Another way to go would be to run a standalone C# desktop app (e.g., a service, console app or the like) and have that app listening over a certain local port -- then have your SWF talk to that app using the Socket classes. I'm doing something like this now (with Java, not C#, but the idea's the same) for a personal project.

2
ответ дан 18 December 2019 в 13:19
поделиться

Если под «рядом» вы подразумеваете использование c # в качестве промежуточного программного обеспечения для подключения к вашей базе данных (возможно, SQL Server) или выполнить удаленные вычисления, тогда да, вы можете. Вы можете подключиться к сервису ac #, используя удаленные объекты. Полуночные кодеры создают продукт под названием WebORB, который довольно прост в использовании. Версия 3.4 была полностью бесплатной, и этого должно хватить, если вы создаете настольные приложения в Air. Следующие две версии не бесплатны, но, по сути, не дают вам никаких реальных преимуществ.

1
ответ дан 18 December 2019 в 13:19
поделиться

The only way I know of doing this is with C# web service programs and the AIR/Flex apps communicate with the web services.

0
ответ дан 18 December 2019 в 13:19
поделиться

Как уже упоминалось многими другими, вам нужен действительный JSON (т.е. соответствует правилам в http://json.org/ ) для getJSON для работы (это означает, что вы не можете получить HTML через getJSON , как в вашем примере).

Причина, по которой последний тест работает, заключается в том, что последний параметр «json» не интерпретируется как «тип» ». Потому что следующее НЕ работает:

$("#test3").click(function() {
    $.get("index.html",
        '',
        function(response) {
                alert('hi');
                //works
        },
        "json"
    )
});
- 121 --- 2265423--

Весь смысл AIR состоит в том, чтобы позволить веб-разработчикам, знающим AS / JS, легко создавать настольные приложения, которые автоматически переносятся на Win, Linux и Mac. Следовательно, почему нет возможности подключить его к другим языкам, таким как C #, C ++ и т. Д., Поскольку веб-разработчикам, как правило, нет дела до этих языков, и если они использовались, приложение больше не является переносимым (да, большинство языков могут быть перенесены на другие ОС с некоторыми усилиями, но смысл AIR в том, что вы пишете все, что хотите, и он работает везде без дополнительной работы).

Если вы хотите объединить C # и Flash вместо попыток чтобы поместить C # в AIR, вам нужно поместить Flash в приложение C #. В интернете для этого есть различные ресурсы, вот что я нашел в быстром поиске: Пример: Использование внешнего API с контейнером ActiveX . Когда вы ищете, убедитесь, что он говорит о более новом, более продвинутом методе ExternalInterface / External API, а не о методе oldschool SetVariable / CallFunction / watch. Более новый гораздо проще в использовании и имеет больше функций.

Кроме того, да, вы можете использовать собственные компоненты Flash внутри приложения Flex. Как правило, вы просто делаете SWC внутри Flash CS3 (или CS4), а затем импортируйте этот SWC во Flex Builder (или Flex SDK, или FlashDevelop, или ...)

Если вы сами создаете компоненты внутри Flash CS3, вам следует использовать Flex Component Kit. Он предоставляет некоторые функции для вас и вставляет шаблонный код, чтобы ваш Flash-компонент хорошо работал во Flex. Он входит в состав Flex Builder / Flex SDK.

0
ответ дан 18 December 2019 в 13:19
поделиться
Другие вопросы по тегам:

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