Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

msscript

4 réponses
Avatar
Dan
Bonjour a tous.
Je migre de vb6 a vb.net et j'ai un problele pour mon application qui
utilise sans probleme sous vb6.
il sagit sous vb6 de l'ocx msscript , script contro qui est intégré a
vb.net .

J'essaie d'utiliser sous VB.net 2008 le controle ' script contro lobject'
j'ai fais un petit essai dans FORM1 si quelqu'un a eu l'occasion de migré
et d'utiliser ce controle.
voici un petit ex qe j'ai fait pour faire court
j'ai un label que je veut metre a 1 label pour faire un teste.

Je n'ai aucune erreur dans le code que je viend d'ecrire

mais sur addobject de la ligne :
ScriptControl1.AddObject("Form1", Me, True)

j'ai l'erreur suivante:
Le cast spécifié n'est pas valide.

Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs
As System.EventArgs) Handles MyBase.Load

ScriptControl1.AddObject("Form1", Me, True)

ScriptControl1.ExecuteStatement("Label1.caption = 1")


End Sub

quelle corection me conseillez vous?

J'ai besoin de votre aide,

D'avance merci de votre aide




v

4 réponses

Avatar
Fred
in news:498c7df7$0$28672$, Dan wrote :

Bonjour a tous.



Bonjour,

Je migre de vb6 a vb.net et j'ai un problele pour mon application qui
utilise sans probleme sous vb6.
il sagit sous vb6 de l'ocx msscript , script contro qui est
intégré a vb.net .

J'essaie d'utiliser sous VB.net 2008 le controle ' script contro
lobject' j'ai fais un petit essai dans FORM1 si quelqu'un a eu
l'occasion de migré et d'utiliser ce controle.
voici un petit ex qe j'ai fait pour faire court
j'ai un label que je veut metre a 1 label pour faire un teste.

Je n'ai aucune erreur dans le code que je viend d'ecrire

mais sur addobject de la ligne :
ScriptControl1.AddObject("Form1", Me, True)

j'ai l'erreur suivante:
Le cast spécifié n'est pas valide.

Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal
eventArgs As System.EventArgs) Handles MyBase.Load

ScriptControl1.AddObject("Form1", Me, True)

ScriptControl1.ExecuteStatement("Label1.caption = 1")


End Sub

quelle corection me conseillez vous?



Il faut, je pense, rendre l'assembly visible dans COM.
Propriété du projet, onglet Application, bouton «Assembly Information
...» (en anglais chez moi)
La case à cocher en bas «Make assembly COM-visible».

--
Fred

Avatar
Dan
Merci de ton aide.
Malheureusement je ne trouve rien de ce nom ,pourais tu me donner son
chemin d'ecces tel qu'il apparait chez toi?
n'y aurait il pas chez toi une dll ou une OCX qui me ferai defeau?
MLalheureusement je ne parle pas anglais.
Le plus rageant est que sur VB6 ca marche parfaitement bien chez moi et pas
sur VB.net 2008!.
Tu es semble t'il le seul a pouvoir me renseigner sur les forum
Peut etre qu'en t'envoyant mon petit exemple pourais tu voir ce qui me
manque,je peux te le faire parvenir mais je pence que les pieces jointes ne
pasent pas sur les forums.

A+
Dan

c"Fred" a écrit dans le message de
news:
in news:498c7df7$0$28672$, Dan wrote :

Bonjour a tous.



Bonjour,

Je migre de vb6 a vb.net et j'ai un problele pour mon application qui
utilise sans probleme sous vb6.
il sagit sous vb6 de l'ocx msscript , script contro qui est
intégré a vb.net .

J'essaie d'utiliser sous VB.net 2008 le controle ' script contro
lobject' j'ai fais un petit essai dans FORM1 si quelqu'un a eu
l'occasion de migré et d'utiliser ce controle.
voici un petit ex qe j'ai fait pour faire court
j'ai un label que je veut metre a 1 label pour faire un teste.

Je n'ai aucune erreur dans le code que je viend d'ecrire

mais sur addobject de la ligne :
ScriptControl1.AddObject("Form1", Me, True)

j'ai l'erreur suivante:
Le cast spécifié n'est pas valide.

Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal
eventArgs As System.EventArgs) Handles MyBase.Load

ScriptControl1.AddObject("Form1", Me, True)

ScriptControl1.ExecuteStatement("Label1.caption = 1")


End Sub

quelle corection me conseillez vous?



Il faut, je pense, rendre l'assembly visible dans COM.
Propriété du projet, onglet Application, bouton «Assembly Information ...»
(en anglais chez moi)
La case à cocher en bas «Make assembly COM-visible».

--
Fred



Avatar
Dan
Bonjour
Je regarde encore et je constate que mon pb vient de la ligne
scTemp.Language = "vbscript"
cela marche si je veux interpreter "1 + 2 " ex
Dim res As Double = scTemp.Eval("1+2")

la ca marche
mais si je met
Dim res As Double = scTemp.Eval("Label1.text = 1")
ne marche pas et je recupere l'erreur :
L'exception System.Runtime.InteropServices.COMException n'a pas été gérée
ErrorCode=-2147352319
Message="Exception de HRESULT : 0x80020101"
Source="Interop.MSScriptControl"
donc le parametre vbscript" n'est pas corecte ou alors val de
scTemp.Eval'est pas corecte
qu'en penses tu ?


"Fred" a écrit dans le message de
news:
in news:498c7df7$0$28672$, Dan wrote :

Bonjour a tous.



Bonjour,

Je migre de vb6 a vb.net et j'ai un problele pour mon application qui
utilise sans probleme sous vb6.
il sagit sous vb6 de l'ocx msscript , script contro qui est
intégré a vb.net .

J'essaie d'utiliser sous VB.net 2008 le controle ' script contro
lobject' j'ai fais un petit essai dans FORM1 si quelqu'un a eu
l'occasion de migré et d'utiliser ce controle.
voici un petit ex qe j'ai fait pour faire court
j'ai un label que je veut metre a 1 label pour faire un teste.

Je n'ai aucune erreur dans le code que je viend d'ecrire

mais sur addobject de la ligne :
ScriptControl1.AddObject("Form1", Me, True)

j'ai l'erreur suivante:
Le cast spécifié n'est pas valide.

Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal
eventArgs As System.EventArgs) Handles MyBase.Load

ScriptControl1.AddObject("Form1", Me, True)

ScriptControl1.ExecuteStatement("Label1.caption = 1")


End Sub

quelle corection me conseillez vous?



Il faut, je pense, rendre l'assembly visible dans COM.
Propriété du projet, onglet Application, bouton «Assembly Information ...»
(en anglais chez moi)
La case à cocher en bas «Make assembly COM-visible».

--
Fred



Avatar
Dan
Merci beaucoiup,je refais un petit prog et j'essaie de te le donner en piece
jointe.
A+v
"Fred" a écrit dans le message de
news:
in news:498d6b44$0$28671$, Dan wrote :

Merci de ton aide.
Malheureusement je ne trouve rien de ce nom ,pourais tu me donner son
chemin d'ecces tel qu'il apparait chez toi?



Vois l'image en PJ (elle devrait passer)

Tu es semble t'il le seul a pouvoir me renseigner sur les forum
Peut etre qu'en t'envoyant mon petit exemple pourais tu voir ce qui
me manque,je peux te le faire parvenir mais je pence que les pieces
jointes ne pasent pas sur les forums.



Oui, bien sûr, envoie moi un exemple minimaliste de projet et je
regarde.
Je ne suis pas un spécialiste de ces manipulations. J'ai juste regardé
un peu la faisabilité il y a quelques temps. J'avais pu déplacer ma Form
sans problème avec un code tel que le tien.

--
Fred