Heres what I would do.
Create your new delivery method
Look under the heading "feedback and timing"
Select the "Allow the user to delay running the package" radio button
Then tick only the "delay until next login automatically" checkbox
This should work for both push and pull methods.
This option basically means that it will wait for the next user to login before running the installation.
When i did this devices wich are offline in scheduled tasks have status Off and result cannot find agent.
Is this possible to make delivery method wich will wait for the moment when machine will be on an then run scheduled task on it?
You may consider to create an new "Policy-Supported push" delivery method using the feedback and timing settings Terry suggested. In this way PCs that are offline when staring the task, will start it when back online reporting to the core.
Hope this helps
Still computer status is off and result can not find agent. schould I fix any other settings in delivery method?