簡體   English   中英

WIX不會在unistall上停止Windows服務

[英]WIX is not stopping windows service on unistall

我在wix安裝程序中遇到了非常奇怪的情況。 我有自定義BA應用程序,該應用程序安裝Windows服務並在卸載時將其刪除。 在Win XP上,一切正常運行,但是在Win 10上,盡管卸載成功完成,但服務並未停止且未刪除。 在日志文件中,我看不到與此相關的任何錯誤。 有任何想法嗎?

這是服務安裝配置:

    <ServiceInstall
      Id="MyServiceInstaller"
      Type="ownProcess"
      Name="MyService"
      DisplayName="My Service"
      Description="My Service"
      Start="auto"
      Account="[SERVICEACCOUNT]"
      Password="[SERVICEPASSWORD]"
      ErrorControl="normal" />
    <ServiceControl Id="StartMyService"
            Name="MyService"
            Start="install"
            Wait="no" />
    <ServiceControl Id="StopMyService"
                    Name="MyService"
                    Stop="both"
                    Remove="uninstall"
                    Wait="yes" />

第二回合

我在這里跳了槍。 正如克里斯所說,我們確實需要查看日志。 我以為卸載正在掛起,這似乎根本沒有發生

  1. ARP :我想您應該首先快速檢查“添加/刪除程序”中是否有兩個產品條目? (也不認為這是問題所在-重大升級失敗)。
  2. SharedDllRefCount :服務組件的SharedDllRefCount屬性是否設置為yes 請發布整個組件標記,並指定所有屬性-條件和全部。 如果將組件設置為永久性,則可以解釋問題,但是在XP上無法進行卸載。 啟用SharedDllRefCount可在此處設置舊版引用計數:
    • HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\SharedDLLs
    • HKLM\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\SharedDLLs
    • 一些SharedDllRefCount 清理詳細信息在這里: MSI不卸載.dll文件
  3. 條件表 :有沒有在任何條目條件表 (功能條件)。

第一輪 (誤解了這個問題-再次-仍然有兩個項目適用):

  1. 調試日志記錄 :也許嘗試以詳細的命令運行卸載,調試日志記錄以查看是否可以獲取有關問題根源的更多信息:

     msiexec.exe /x {ProductCode} /L*vx! C:\\Your.log 
  2. 安全軟件 :問題包裝盒上是否有防病毒軟件或安全軟件? 如果是這樣,請在運行卸載之前嘗試禁用它。

  3. 事件日志 :也許可以快速查看事件查看器中的任何線索? Windows +點擊R。鍵入eventvwr並按OK )。 檢查不同的日志。

  4. 自定義動作 :您有在卸載時運行的任何自定義動作嗎? 如果是這樣,哪種類型的自定義操作? 托管代碼?

  5. 服務憑證 :服務帳戶的密碼在該問題框中仍然有效嗎? 如果情況變得更糟,您是否可以使用這些服務憑據登錄(如果可能的話),然后嘗試啟動和停止服務以檢查錯誤? 甚至嘗試使用您自己的管理員帳戶運行該服務? 這都不是理想的選擇,而應該做到這一切。


最近在StackOverflow上有很多服務問題。 以下是一些近期答案:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM