character*40 :: string
является символьной строкой длиной 40
character(len=40) :: string
также является символьной строкой длиной 40
character :: string(40)
- это массив из 40 символьных строк длины 1
character*40 :: string(40)
- массив из 40 символьных строк длиной 40
character(len=40) :: string(40)
- это массив из 40 символьных строк длиной 40
. Второй внутренняя запись не выполняется, поскольку она записывает первую строку в массив string2
. Первая строка string2(1)
имеет длину всего 1 символ и она слишком короткая. По этой причине вы получаете условие ошибки конца записи , это сообщение слишком длинное для поставляемой строки.
Внутренняя запись обрабатывает элементы массива как отдельные записи (похожие на отдельные строки) , Можно использовать массивы строк во внутренней записи, если для записи в массив больше записей (строк).
Можно разместить веб-страницу в приложении WPF с помощью средств управления WebBrowser, который был добавлен в.NET 3,5 SP1:
<Grid>
<WebBrowser Name="browser" />
</Grid>
И в коде - позади Вас должны установить Uri на Вашу страницу и объект (который должен быть com-видим), который нужно назвать из сценария Java:
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
string uri = AppDomain.CurrentDomain.BaseDirectory + "TestPage.html";
this.browser.Navigate(new Uri(uri, UriKind.Absolute));
this.browser.ObjectForScripting = new ScriptingHelper();
}
[ComVisible(true)]
public class ScriptingHelper
{
public void ShowMessage(string message)
{
MessageBox.Show(message);
}
}
}
И наконец на Вашей странице необходимо назвать код с помощью window.external как ниже:
<head>
<title></title>
<script type="text/javascript">
function OnClick()
{
var message = "Hello!";
window.external.ShowMessage(message);
}
</script>
</head>
<body>
<a href="#" onclick="OnClick()">Click me</a>
</body>
o, и необходимо добавить сохраненный от URL = (0014) комментарий about:internet выше главного тега, чтобы заставить IE не заблокировать javascript