Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Вниз

TScriptControl   Найти похожие ветки 

 
StriderMan ©   (2006-07-19 18:58) [0]

кто-нибудь пользовался сабж"ем? (MSScriptControl)

конкретно интересует как передать в скрипт значение типа TDateTime и как там с ним работать?


 
Palladin ©   (2006-07-19 23:00) [1]

http://podgoretsky.com/ftp/Docs/Delphi/Tenser/7/index.html


 
jack128 ©   (2006-07-19 23:20) [2]

StriderMan ©   (19.07.06 18:58)
конкретно интересует как передать в скрипт значение типа TDateTime и как там с ним работать?

так же как и любые другие данные.  OleVariant поддердивает даты (см System.varDate) так в чем проблема??


 
palva ©   (2006-07-20 09:55) [3]

jack128 ©   (19.07.06 23:20) [2]
Интересно код увидеть. Хотя бы один ключевой оператор. Хотя бы для передачи значения целой переменной. Какой метод при этом используется?
А проблема в том что программа может AddCode к скрипту, Eval, Run и вроде бы все. Единственную возможность я вижу - это преобразовать TDateTime в строку, сформировать из нее строку кода такого типа:
"d = #12/31/2005 12:00:03#"
(если это бейсик) и выполнить ее в скрипте. Но это же не передача переменной типа OleVariant?


 
StriderMan ©   (2006-07-20 12:22) [4]

передаю парметры в процедуры в виде интерфейсов IDispatch через PSafeArray.


 
StriderMan ©   (2006-07-20 12:29) [5]

var
 Params: PSafeArray;
begin
 Params := MakeParmsArray([IP, IR]);
 try
   ScriptControl.Run("TestFunc", Params);
 finally
   SafeArrayDestroy(Params);
 end;



> OleVariant поддердивает даты (см System.varDate) так в чем
> проблема??

в Джава скрипте тип Date является классом. Если туда положить просто TDateTime то он отображает его ввиде double (что естественно)


> сформировать из нее строку кода такого типа:
> "d = #12/31/2005 12:00:03#" (если это бейсик) и выполнить
> ее в скрипте.

уже пошел по похожему пути. Преобразую DateTime в юниксовый формат (DateTimeToUnix). Далее в строку и в скрипте выполняю d := new Date(<число мсек с 01.01.1970>). Дата отображается, но пока не удалось выудить из нее составляющие типа Date.GetYear и т.п.


 
jack128 ©   (2006-07-20 16:41) [6]

palva ©   (20.07.06 9:55) [3]
Хотя бы для передачи значения целой переменной. Какой метод при этом используется?

Я добавлял глобальный именованный объект (флаг SCRIPTITEM_GLOBALMEMBERS) и соответственно все данные через Invoke отдавал в скрипт.

StriderMan ©   (20.07.06 12:29) [5]
в Джава скрипте тип Date является классом. Если туда положить просто TDateTime то он отображает его ввиде double (что естественно

Наверное это проблемы ДжаваСкрипта?


 
jack128 ©   (2006-07-20 16:44) [7]

PS http://www.delphikingdom.com/asp/viewitem.asp?catalogid=737 - отличная статья от DiamondShark"а


 
StriderMan ©   (2006-07-20 16:53) [8]


> StriderMan ©   (20.07.06 12:29) [5]
> в Джава скрипте тип Date является классом. Если туда положить
> просто TDateTime то он отображает его ввиде double (что
> естественно
> Наверное это проблемы ДжаваСкрипта?

сейчас это мои проблемы :)
все же делфишный TDateTime всего лишь один из  используемых форматов. кто виноват что в JS он иной? никто. поэтому колупаюсь дальше.....


 
umbra ©   (2006-07-20 17:53) [9]


> в JS он иной

в JS используется время UTC (по-моему, количество миллисекунд с 1 января 1970 года)



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
1-1151709316
xsid
2006-07-01 03:15
2006.08.13
Выделение части картинки


2-1153818848
linsa
2006-07-25 13:14
2006.08.13
Картинка из Access в Delphi


2-1153839351
oleggar
2006-07-25 18:55
2006.08.13
BDE


2-1153888388
LexXL
2006-07-26 08:33
2006.08.13
отловить handle


2-1153487021
b.o.n.d.007
2006-07-21 17:03
2006.08.13
Степень и корень





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский