• 终于可以用SqlWorkflowPersistenceService这个服务了,


    这短时间一直在弄持久化服务。因为对SQL2000会一些。所以打算用SqlWorkflowPersistenceService。

    可以弄来弄去,发现怎么也不对啊?

    查阅了代码,发现代码没有错。。。

    一直弄了好些日子,也请教了一些人,可是问题依旧。。。

    今天照例继续检查我的代码
    我在检查代码的时候查阅了资料,如果要用sql2000的SqlWorkflowPersistenceService服务必须满足两个条件,一个是必须安装SP4,另外一个就是需要开启MSDTC服务。
    检查我的机器后发现,虽然安装了SP4,但是MSDTC服务却启动不正常,于是安装了MSDTC服务,然后重新启动,终于看见我的WORKFLOW实例保存到SQL2000中去啦。

    另外,如果有防火墙,一定要开放105端口和SYSTEM32\MSDTC.EXE

    我的MSDTC出了问题,再付上解决方法。。。。

    setp 1服务
    MSDTC_1.bat
    @echo off
    if {%1}=={} @echo Syntax: MSDTC1 Filename&goto :EOF
    setlocal ENABLEDELAYEDEXPANSION
    set filename=%1
    if exist %filename% del /q %filename%
    (
    @echo Alerter
    @echo EventSystem
    @echo Browser
    @echo TrkWks
    @echo Dnscache
    @echo Eventlog
    @echo PolicyAgent
    @echo dmserver
    @echo Messenger
    @echo Netlogon
    @echo NtLmSsp
    @echo Netman
    @echo PlugPlay
    @echo RpcSs
    @echo RpcLocator
    @echo NtmsSvc
    @echo SamSs
    @echo lanmanserver
    @echo SENS
    @echo Schedule
    @echo LmHosts
    @echo winmgmt
    @echo Wmi
    @echo W32Time
    @echo lanmanworkstation
    )>"%TEMP%"MSDTC1.TMP"
    call :stopdtc>nul 2>&1
    for /f "Tokens=*" %%L in ('reg query HKLM"System"CurrentControlSet"Services^|FINDSTR /I /B /L /C:"HKEY_LOCAL_MACHINE"') do (
    set line=%%L
    set key=HKLM!LINE:~18!
    call :subkey "!key!"
    call :testsvc
    )
    endlocal
    goto :EOF
    :stopdtc
    sc stop msdtc
    goto :EOF
    :testsvc
    for /f "Tokens=*" %%c in ('@echo !svc!^|findstr /I /B /E /L /G:"%TEMP%"MSDTC1.TMP"') do goto :EOF
    set /a start=3
    set /a type=0
    call :getstart>nul 2>&1
    call :gettype>nul 2>&1
    if %type% LSS 16 goto :EOF
    if %start% NEQ 2 goto :EOF
    sc config !svc! start= demand
    @echo sc config !svc! start= auto>>%filename%
    goto :EOF
    :gettype
    for /f "Tokens=2,3" %%x in ('reg query "HKLM"System"CurrentControlSet"Services"!svc!" /V type^|FIND "REG_DWORD"') do (
    set /a type=%%y
    )
    goto :EOF
    :getstart
    for /f "Tokens=2,3" %%x in ('reg query "HKLM"System"CurrentControlSet"Services"!svc!" /V start^|FIND "REG_DWORD"') do (
    set /a start=%%y
    )
    goto :EOF
    :subkey
    set svc=%~nx1


    重启机器


    step 2关联的注册表项及重新安装msdtc组件
    MSDTC_2.bat
    @echo off
    setlocal
    @echo %WINDIR%"System32"msdtc.exe -uninstall
    %WINDIR%"System32"msdtc.exe -uninstall
    call :delkey "HKCR"CID"
    call :delkey "HKLM"SYSTEM"CurrentControlSet"Services"MSDTC"
    call :delkey "HKLM"SYSTEM"ControlSet001"Services"MSDTC"
    call :delkey "HKLM"SYSTEM"ControlSet002"Services"MSDTC"
    call :delkey "HKLM"Software"Microsoft"MSDTC"
    @echo %WINDIR%"System32"msdtc.exe -install
    %WINDIR%"System32"msdtc.exe -install
    endlocal
    goto :EOF
    :delkey
    set key=%1
    call :delkeyq %key% >nul 2>&1
    @echo.
    goto :EOF
    :delkeyq
    REG DELETE %key% /F


    step 3
    MSDTC_3.bat
    @echo off
    if {%1}=={} @echo Syntax: MSDTC3 Filename&goto :EOF
    if not exist %1 Syntax: MSDTC3 Filename - %1 was NOT found.&goto :EOF
    setlocal
    set filename=%1
    for /f "Tokens=*" %%r in ('type %filename%') do (
    %%r
    )
    reg add "HKLM"SOFTWARE"Microsoft"MSDTC"XADLL" /F
    regsvr32 mtxoci.dll
    endlocal

  • 相关阅读:
    把安卓QQ浏览器下载的视频m3u8列表文件转成mp4格式(或者其它视频格式)
    Win8系统删除历史用户本地头像
    大叔郑州街头卖刀 这口才应该上春晚啊
    从尽力而为到全力以赴
    用虚假邮箱注册微博
    百度网盘总结
    试用Sublime Text 3
    玉米地烧毁,相关部门让找鸟儿去索赔
    Video Download Helper总结
    9.29
  • 原文地址:https://www.cnblogs.com/poplau/p/1260498.html
Copyright © 2020-2023  润新知