2011-08-31 60 views
4

我在Windows窗體應用程序中以編程方式將日期導出到Excel電子表格。當我保存Excel文件時,我將該文件標記爲只讀。如果用戶創建一個Excel文件的副本,那麼他們可以修改它,但我想限制克隆(不允許重複的副本),並且如果還有文件的副本,我想讓它也是隻讀的。如何將文件複製爲Readonly?

我不想使用任何密碼。
這可能嗎?

在此先感謝

+0

你應該upvote任何有用的答案和/或選擇一個答案,回答你的問題:-D – docmanhattan

回答

0

你想做的事,如果有在特定的操作系統許可的一些將只可能是什麼「不允許拷貝」。然而,據我所知,沒有任何操作系統(至少Windows,因爲我認爲這是主題是C#和Excel文件,但我肯定不是排他性的)將其作爲特定權限案件。

無論如何,如果有這個選項並且數據被設置爲'只讀',那麼有人可以將文件讀入內存,然後輸出一個包含該特定數據的新文件。關於如何防止副本是一種無用的努力,還有更多的哲學觀點(DRM),但我會節省一些時間,並說明這很難,如果不是不可能的話。

但是,如果你想,你可以加密文件,以便它不能直接在Excel中使用。然後,創建一種包裝器,讀取加密文件,解密它,然後將其傳遞給Excel。爲防止某人複製文件並修改它,您必須將解密的數據直接傳遞給Excel,但我不確定這是否可行,因爲我沒有太多使用Excel的經驗,更不用說讓應用程序與它一起工作。

如果將數據傳遞給Excel將不起作用,您可以嘗試將解密的文件放在不同的目錄中以將它們關閉,但我懷疑這會欺騙任何具有明智或決心的人。

如果有問題的文件應該直接與Excel一起使用(您正在生成用Excel打開的Excel文件),那麼我會說阻止他們修改文件是不可能的。

+0

thanku ..................... – swathi

1

這是不可能的。

只讀僅用於「意外」覆蓋;這不是一個安全系統。

0

如果客戶端存在問題,並且客戶端可以查看它,那麼您無法阻止他進行復制。

相關問題