Использование потока. Как использовать DocumentRef для проверки типа полей DataSnapshot?

В вашем скрипте есть несколько проблем.

В ответ на ваш вопрос причина, по которой вы получаете сообщение об ошибке, связана с тем, что VBScript поддерживает только один тип данных - вариант. В вашей функции «Create_Shortcut» вы определяете свои параметры как конкретные типы данных, такие как «As String» и «As Integer». Удалите объявления типа данных, и вы исправили свою проблему - вид.

Следующая проблема заключается в том, что VBScript не поддерживает необязательные параметры. Таким образом, вам нужно также удалить ключевое слово Optional в вашей сигнатуре метода «Create_Shortcut». В конечном итоге подпись метода будет выглядеть так:

Private Sub Create_ShortCut(TargetPath, ShortCutPath, ShortCutname, WorkPath, Window_Style, IconNum)

Еще одна проблема, связанная с этим сценарием, заключается в том, что она выглядит так, как будто она обрабатывает щелчок на кнопке (Private Sub Command1_Click), если это сценарий VB, а не приложение VB 6, вам не нужен обработчик нажатия кнопки Однако вам нужно вызвать вашу функцию, поэтому, если вы удалите подпись для нажатия кнопки, а также закрытие «End Sub», вы будете правильно выполнять свою функцию. Однако ....

У кода в методе «Create_Shortcut» также есть проблема. Как и в приведенном выше описании, существует только один тип данных - Variant - поэтому удалите «As Object» из двух строк, объявляющих переменные.

Функция все еще не работает, но эта последняя проблема заключается в том, что при вызове метода вы пропускаете пустой путь к каталогу; требуется рабочий каталог, поэтому просто не забудьте передать его вашему методу. Измените свой код:

Create_ShortCut "C:\MyApp\bin\test_application.exe", "Desktop", "My-Test", , 0, 1

на

Create_ShortCut "C:\MyApp\bin\test_application.exe", "Desktop", "My-Test", "C:\MyApp\bin" , 0, 1

Итак, в конечном счете, ваш файл VBS будет выглядеть следующим образом:

Create_ShortCut "C:\MyApp\bin\test_application.exe", "Desktop", "My-Test", "C:\MyApp\bin" , 0, 1

Private Sub Create_ShortCut(TargetPath, ShortCutPath, ShortCutname, WorkPath, Window_Style, IconNum)
    Dim VbsObj
    Set VbsObj = CreateObject("WScript.Shell")

    Dim MyShortcut
    ShortCutPath = VbsObj.SpecialFolders(ShortCutPath)
    Set MyShortcut = VbsObj.CreateShortcut(ShortCutPath & "\" & ShortCutname & ".lnk")
    MyShortcut.TargetPath = TargetPath
    MyShortcut.WorkingDirectory = WorkPath
    MyShortcut.WindowStyle = Window_Style
    MyShortcut.IconLocation = TargetPath & "," & IconNum
    MyShortcut.Save
End Sub
0
задан Jojo Narte 13 July 2018 в 05:40
поделиться

1 ответ

Я думаю, что нет никакого прямого способа сделать это в JavaScript, поскольку это трудно проверить с помощью типов, поэтому я решил, что просто внесет изменения в мою структуру Firestore, добавив object с именем refs который будет содержать все ссылки, что упростит для меня повторение всех ссылок, поскольку я уверен, что все в поле refs являются DocumentRef s.

0
ответ дан Jojo Narte 17 August 2018 в 13:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: