2009-01-28 15 views
0

Je veux appeler cela .. aussi bien que ShellExecute (Handle, 'open', 'c: \ Windows \ notepad.exe', nil, nil, SW_SHOWNORMAL) je peux appeler ça sans problème à l'intérieur d'une méthode de forme1ShellExecute à partir d'une procédure

mais je viens d'avoir une procédure "procedure transformdataset();" que je veux appeler cela et il ne reconnaît pas la poignée ... dois-je juste faire de cette procédure une méthode de formulaire1? comment je fais ça? Est-ce la solution?

Répondre

1

Oui, ShellExecute a besoin de Window Handle. La solution la plus directe consiste à la transmettre à votre méthode. Je trouve cela un peu moche mais personnellement, je considérerais appeler ShellExecute quand la méthode revient. Si l'appel est facultatif (en fonction des données), envisagez de renvoyer un indicateur d'état de la méthode indiquant si l'appel ShellExecute est requis. De toute façon fonctionne, cependant.

+0

acclamations je suis allé pour la version d'ugley mais au moins cela fonctionne grâce :) – Arthur

+0

Laid est dans l'oeil du spectateur. J'espérais que tu ne prendrais rien d'autre qu'une préférence personnelle. Merci de marquer cela comme la réponse! –