2013-12-18 152 views
1
  • 我有一個Windows服務,在UNIX框中無法訪問NFS share。我無法訪問與UNC路徑的共享,所以我必須安裝它。從Windows服務訪問NFS共享

  • 我有一個控制檯應用程序,可以看到驅動器並運行良好,但是當我部署Windows服務時,它無法看到驅動器。

  • 我把驅動器安裝成我的本地用戶以及管理員。

  • 我試過用我的應用程序通過使用"Process.Start(mBatchFilePath);"來安裝一個驅動器,但那也不管用。

  • 我以本地用戶身份運行(以管理員身份設置)。

  • 使用符號鏈接

  • 將試圖建立一個FTP傳輸文件

    試圖

有沒有人對我怎樣才能使這項工作有什麼建議?

解決:我用SSH.Net和傳輸文件與SFTP服務器

+0

與桌面互動被勾選? –

+0

爲了澄清,您安裝了服務*以在管理員帳戶下運行*所以它真的應該能夠看到管理員的驅動器? – criticalfix

+0

@邁克米勒 - 與桌面互動被打勾。 – Skytrak

回答

0

我不認爲該驅動器映射到一個符號鏈接是一個真正的解決方案。問題是,該服務在特定用戶帳戶下運行,因此它使用此帳戶的特權訪問所有資源。當然,您的IT管理員是正確的,讓服務在本地管理員帳戶下運行並不是一個好主意。

您應該創建一個允許訪問共享文件夾的新用戶帳戶。然後設置它在該帳戶下運行的服務,並且服務應該能夠訪問網絡共享。但請記住,映射到驅動器盤符的網絡共享僅映射給當前用戶。因此,該服務(在不同的用戶帳戶下運行)根本沒有任何帶有這封信的驅動器,它不在其帳戶下映射。 因此,在您的服務中,您應始終使用完整的UNC路徑訪問共享,而不要使用映射的驅動器號。

+0

我同意。畢竟,這個符號鏈接並不是一個解決方案。我向IT提及,我想用UNC路徑訪問它,但他們說它不能在Windows和我們的Solaris盒子之間完成。我對UNIX沒有任何經驗,所以我必須聽取他的意見。 – Skytrak

0

由於我們從一個Windows機器連接到Solaris服務器,我需要使用SFTP將文件發送到服務器。

我設想了某種文件夾同步,但它不是我想要下去的路線。

我使用了SSH.Net庫。